Javascript 正则表达式匹配按此顺序包含字母的整个单词(空格之间的字符)
我试图匹配一个完整的单词,空格之间的字符,如果它包含字母PRP,在这种情况下,在javascript中按顺序 我要做的是选择所有包含PRP的单词,并将它们替换为Javascript 正则表达式匹配按此顺序包含字母的整个单词(空格之间的字符),javascript,regex,Javascript,Regex,我试图匹配一个完整的单词,空格之间的字符,如果它包含字母PRP,在这种情况下,在javascript中按顺序 我要做的是选择所有包含PRP的单词,并将它们替换为(空格) 这里有一个正则表达式,我可以找到它来匹配任何字母p或r或p:\b(?=\w*[PRP])\w+\b 一旦我知道了正则表达式,我的计划就是做str.replace(matchAllWordsWithregex,”) 那么什么是正则表达式,我如何在replace函数中用这个正则表达式说出所有单词呢?如果你想让文本PRP匹配,你需要去
(空格)
这里有一个正则表达式,我可以找到它来匹配任何字母p或r或p:\b(?=\w*[PRP])\w+\b
一旦我知道了正则表达式,我的计划就是做str.replace(matchAllWordsWithregex,”)
那么什么是正则表达式,我如何在replace函数中用这个正则表达式说出所有单词呢?如果你想让文本
PRP
匹配,你需要去掉PRP
周围的方括号(因为你要用它们创建一个匹配p
或R
):
但在这里,您实际上不需要前瞻性断言(也不需要单词边界):
将工作得很好(对于字母数字“单词”)。要替换字符串主题中的所有匹配项,可以使用
result = subject.replace(/\w*PRP\w*/g, " ");
如果你将一个词定义为“除空格外的任何内容”,请使用
谢谢,但当我测试它时,它只是替换PRP而不是整个单词。我想替换包含PRPI的整个单词。我希望匹配包含PRP的空白之间的所有字符,无论它们是字母还是符号。空格是指定符。然后您需要使用\S
而不是\w
,因为后者只匹配字母数字(和下划线)。谢谢。我怎样才能让它也匹配单词中的符号?
\w*PRP\w*
result = subject.replace(/\w*PRP\w*/g, " ");
result = subject.replace(/\S*PRP\S*/g, " ");