拆分没有一些空格

时间:2017-03-29 16:30:49

标签: javascript split

早上好,

如果我有一个字符串:

"@Hello(first second), one two"

我想要一个数组:

["@Hello(first second)", "one", "two"]

我怎么能这样做?

谢谢,

1 个答案:

答案 0 :(得分:0)

您可以.split()RegExp /\s(?!\w+\))/匹配空格字符,后跟字符后跟右括号“)”

var str = "@Hello(first second), one two";
var res = str.split(/\s(?!\w+\))/);
console.log(res);

或者,您可以使用.match()RegExp /@\w+\(\w+\s\w+(?=\))\)|\w+(?=\s|$)/g匹配“@”后跟一个或多个单词字符,后跟“(”后跟单词字符,后跟空格字符,后跟单词字符后跟关闭parenthsis“)”或单词字符后跟空格或字符串结尾

var str = "@Hello(first second), one two";
var res = str.match(/@\w+\(\w+\s\w+(?=\))\)|\w+(?=\s|$)/g);
console.log(res);