我正在尝试匹配整个单词,空格之间的字符,如果它在这种情况下包含字母PRP并且在javascript中按顺序包含。
我要做的是选择包含PRP的所有单词,并用(空格)替换它们。
这是一个我能想到的正则表达式,它匹配任何字母p或r或p:\b(?=\w*[PRP])\w+\b
。
一旦我知道正则表达式,我的计划是做str.replace(matchAllWordsWithregex,'');
那么正则表达式是什么?如何用替换函数中的这个正则表达式说出所有单词?
答案 0 :(得分:1)
如果您希望文字文本PRP
匹配,则需要删除PRP
周围的方括号(因为有了它们,您创建的character class与{{{}匹配1}}或P
):
R
但是你实际上并不需要先行断言(也没有字边界):
\b(?=\w*PRP)\w+\b
将正常工作(对于字母数字“单词”)。要替换字符串\w*PRP\w*
中的所有匹配项,您可以使用
subject
如果您将单词定义为“除空白之外的任何内容”,请使用
result = subject.replace(/\w*PRP\w*/g, " ");