我有一个字符串,其中包含某些序列“ SMP-未知字符数-4个字符”。除了正则表达式,我必须从字符串中选择所有内容。目前,我可以选择要排除的子字符串。
(SMP-([\S])+-[\S][\S][\S][\S])
我必须从字符串中选择除上述正则表达式之外的所有内容。
测试字符串:
"testing updated regex: SMP-werdgs-2903 testm"
答案 0 :(得分:0)
有两种方法可以完成您要问的事情:
1 /匹配之前和之后的所有内容,并对两个结果进行合并:
^(.*) SMP-([\S])+-[\S][\S][\S][\S] (.*)$
或使用javascript
matches = p.match(/^(.*)SMP-\S+-\S{4}(.*)$/);
result = matches[1]+matches[2];
// or matches[0] seem to work also
2 /使用regexp替换运算符从字符串中删除不需要的部分:
s/SMP-([\S])+-[\S][\S][\S][\S]//$
或在javascript中
result = p.replace(/SMP-\S+-\S{4}/ '')