将完整单词与JavaScript RegExp匹配
我想在字符串中查找一个单词将完整单词与JavaScript RegExp匹配,javascript,regex,Javascript,Regex,我想在字符串中查找一个单词 re = new RegExp("bob"); checkWord = re.test("This is bobby!"); if (checkWord) { break; } 我想要checkWord=false,因为我只是在寻找“bob”,但它需要checkWord=true,因为“bobby”包含“bob”这个词。我能做些什么来解决这个问题?谢谢。应该使用单词边界 re = /\bbob\b/; 您可以通过两种不同的方式实现这一点: 给边界 \bbob\b
re = new RegExp("bob");
checkWord = re.test("This is bobby!");
if (checkWord) { break; }
我想要checkWord=false,因为我只是在寻找“bob”,但它需要checkWord=true,因为“bobby”包含“bob”这个词。我能做些什么来解决这个问题?谢谢。应该使用单词边界
re = /\bbob\b/;
您可以通过两种不同的方式实现这一点: 给边界
\bbob\b
或者将他们分组
\b(bob)\b
两者都会起作用
这是一个工作示例:
如果您使用的是数组,则循环每个数组并分别进行检查。为此,您也可以尝试以下方法
nameArray = new Array("Bob", "Ben", "Don");
for (i = 0; i < nameArray.length; i++) {
if(nameArray[i].indexOf("Bob") != -1)
{
alert("true");
}
else
{
alert("false");
}
}
nameArray=新数组(“Bob”、“Ben”、“Don”);
对于(i=0;i
如果我有一个名称数组,比如。。nameArray=新数组(“bob”、“Ben”、“Don”);我怎么把它们放进。。re=/\b“+nameArray[i]+“\b/;您可以将它们粘合在一起,就像re=newregexp(“\b”(“+nameArray.join(“|”)一样代码>谢谢。它正在工作。但我还有最后一个问题。如何在数组中使用边界。我尝试了re=“/\b”(+nameArray[I]+”)\b/”;它不起作用。@SherleneTan我试着这么做,但奇怪的是,我有同样的问题:我认为你应该接受答案并用数组打开一个新问题,因为标题是匹配一个完整的单词(有答案)好的,谢谢你的推荐。(另外,你的问题会有更多的人。)