Javascript正则表达式在某些单词或数字之后拆分

时间:2015-03-17 08:59:40

标签: javascript regex

正则表达式:

"12 DOse Flaschentomaten".split(/(\d+(?:\s(?:Dose|TL|EL)){0,})\s+(.*)/gi)

让我使用正则表达式工具(https://www.regex101.com/)两组:

12 DOse  
Flaschentomaten

这就是我想要的。

但是在javascript控制台中这个数组

["", "12 DOse", "Flaschentomaten", ""]

附带问题: 如果我想使用外部数组作为过滤词,我必须将其定义为字符串: var filterWords =“sp,ts,spoon”; 我是否也可以仅对群组使用i标签不区分大小写?

1 个答案:

答案 0 :(得分:1)

我想你想要match,而不是split



m = "12 DOse Flaschentomaten".match(/(\d+(?:\s(?:Dose|TL|EL))?)\s+(.*)/i)
document.write("<pre>" + JSON.stringify(m,0,3));
&#13;
&#13;
&#13;

添加m.shift()以删除第一个元素(=整个匹配)。