在字符串中搜索整个单词

Ana*_*Jha 3 javascript

我正在寻找一个用javascript编写的函数(不是在jquery中),如果给定的单词完全匹配(不应区分大小写),它将返回true.

喜欢..

var  searchOnstring=" Hi, how are doing?"

   if( searchText=='ho'){
    //output : false
   }

   if( searchText=='How'){
    //output : true
   }
Run Code Online (Sandbox Code Playgroud)

谢谢.

Com*_*eek 16

你可以使用正则表达式:

\bhow\b
Run Code Online (Sandbox Code Playgroud)

例:

/\bhow\b/i.test(searchOnstring);
Run Code Online (Sandbox Code Playgroud)

如果你想要一个可变的单词(例如来自用户输入),你必须注意不要包含特殊的RegExp字符.

你必须逃脱它们,例如使用MDN中 提供的功能(向下滚动一下):

function escapeRegExp(string){
  return string.replace(/([.*+?^=!:${}()|\[\]\/\\])/g, "\\$1");
}

var regex = '\\b';
regex += escapeRegExp(yourDynamicString);
regex += '\\b';

new RegExp(regex, "i").test(searchOnstring);
Run Code Online (Sandbox Code Playgroud)