将字符串拆分为 n 段并忽略换行符?

My *_*ame 2 javascript

我想将我的字符串分成每 3 个字符的一个段,这里是我的片段示例

let a = "abcdef"; //length 6
let b = `a
b
c
d
e
f`; // length 11 including line break

console.log(a.match(/.{1,3}/g));
console.log(b.match(/.{1,3}/g));
Run Code Online (Sandbox Code Playgroud)

结果var a很好,但是当我在每个字符中添加换行符时var b是错误的,为什么它会拆分每个字符var b?我希望结果是这样的:

[
    `a{line_break}b`,
    `{line_break}c{line_break}`,
    `d{line_break}e`,
    `{line_break}f`
]
Run Code Online (Sandbox Code Playgroud)

Cer*_*nce 5

.默认情况下不匹配换行符。为此,请使用s标志:

let b = `a
b
c
d
e
f`; // length 11 including line break

console.log(b.match(/.{1,3}/gs));
Run Code Online (Sandbox Code Playgroud)

或 match [\s\S],如果您的环境不支持/s

let b = `a
b
c
d
e
f`; // length 11 including line break

console.log(b.match(/[\s\S]{1,3}/g));
Run Code Online (Sandbox Code Playgroud)