我有一个像"Azarenke V. Su Simple 90"
这样的字符串,我需要拆分它并将所有单词放在数组中。
我使用这段代码:
var s = "Azarenke V. Su Simple 90";
var array = s.split(/(\ +)/);
console.log(JSON.stringify(array));
但结果是:
"["Azarenke"," ","V."," ","Su"," ","Simple"," ","90"]"
某些地方空虚'字符串只包含空格。但我不想在输出数组中推送它们。我熟悉C#和.net,它有类似RemoveEmptyEntries
的内容,但在javascript中却找不到相同内容。怎么解决这个任务?我可能需要在正则表达式中发表一些评论吗?
答案 0 :(得分:2)
尝试不用(捕捉)parens
var s = "Azarenke V. Su Simple 90";
var array = s.split(/\s+/);
console.log(JSON.stringify(array));
// Output: ["Azarenke","V.","Su","Simple","90"]
答案 1 :(得分:1)
只需删除捕获组即可。捕获组将保持分隔符。也就是说,它根据分隔符拆分输入,并在最后打印出分隔符。
> var s = "Azarenke V. Su Simple 90";
undefined
> s.split(/\s+/);
[ 'Azarenke',
'V.',
'Su',
'Simple',
'90' ]
答案 2 :(得分:0)
您可以先使用以下单位空格替换多个空格:
`Azarenke V. Su Simple 90`.replace(/ +(?= )/g,'');
然后你可以用空格分开。