我有一个字符串,格式如下:
"word1 word2 \ngroup of words\n"
我需要按空格分割它,但排除出现在2个
\n
之间的空格,并保留 \n
字符。所以结果将是类似于这样的数组:[
"word1",
"word2",
"\ngroup of words\n"
]
我找到了一些使用逗号,
而不是换行符\n
实现相同效果的结果,但我无法使用其他字符来替换它。
目前我正在使用下面的代码,但它不能保留\n
。
input.split('\n').flatMap((s,i)=>i%2?`\n${s.trim()}\n`:s.trim().split(' ')).filter(v=>v)
注意:
如果输入字符串在 \n
之前有单词,则始终会有一个空格,即字符串可以包含 word1 \ngroup 1\n
,但永远不会是 word1\ngroup 1\n
一个字符串也可以包含多个组,例如 word1 \ngroup 1\n word2 \ngroup 2\n