Javascript正则表达式捕获下一个单词

时间:2012-02-24 12:08:19

标签: javascript regex

我正在搜索正则表达式,例如在“dog”之后找到下一个单词,并将其删除

"123 dog rabbit cat".replace(myregex, "");
"123 dog cat"

由于

编辑:但

"123 dog <b> ok</b> cat".replace(myregex, "");

不应该做任何事情

3 个答案:

答案 0 :(得分:2)

您可以使用:

"123 dog rabbit cat".replace(/dog (.*?)( |$)/, "dog ");

答案 1 :(得分:2)

最简单的方法:

"123 dog rabbit cat".replace(/(dog) \w+/, '$1')

答案 2 :(得分:1)

到目前为止发布的表达式将失败,例如123 dog <more spaces> rabbit cat,所以我认为\s+\S+\s+\w+会更准确:

console.log("123 dog     rabbit! cat".replace(/(dog)\s+\S+/, '$1'))  // 123 dog cat
console.log("123 dog     rabbit! cat".replace(/(dog)\s+\w+/, '$1'))  // 123 dog! cat

我在您的字符串中添加了!,以显示\S\w之间的区别。