将字符串拆分为“单词”数组的最佳方法是什么。 通过空格分割,也可以用破折号分割,破折号成为前一个“单词”的一部分。
示例:
“这是一个示例字符串
演示我的意思“
[“This”,“is”,“an”,“example - ”,“string”,“to”,“demo”,“what”,“I”,“mean”]
编辑:我是个白痴 - 就是这样:someString.replace(/-/g, "- ").split(/[\s]/); // retain dashes
答案 0 :(得分:6)
如果分隔符应保留在结果中,则拆分将不起作用,因为分隔符始终被占用。
改为使用.match
:
"This is an example-string to demo what I mean".match(/[^\s-]+-?/g);
// ["This", "is", "an", "example-", "string", "to", "demo", "what", "I", "mean"]
此正则表达式匹配一个或多个不是空格/短划线的字符,以及跟随它的可选短划线。使用g
标志,将返回所有匹配项。