如何使用匹配javascript搜索特定的单词?

如何使用匹配javascript搜索特定的单词?

问题描述:

如何使用匹配JavaScript搜索特定的单词?如何使用匹配javascript搜索特定的单词?

通过这个代码,我想提醒not found

function check() { 
 
    var str = "abcdefg"; 
 
    if (str.match(/abc/)) { 
 
    alert("found"); 
 
    } else { 
 
    alert("not found"); 
 
    } 
 
}
<div onclick="check()">CLICK HERE</div>

而对于这个代码,我想提醒found

function check() { 
 
    var str = "abc"; 
 
    if (str.match(/abc/)) { 
 
    alert("found"); 
 
    } else { 
 
    alert("not found"); 
 
    } 
 
}
<div onclick="check()">CLICK HERE</div>

我该怎么做?

+1

此 –

使用RegExp#test搜索匹配的方法和use word boundary regex确切词匹配。

<div onclick="check()">CLICK HERE</div> 
 

 
<script> 
 
    function check() { 
 
    var str = "abcdefg"; 
 
    if (/\babc\b/.test(str)) { 
 
     alert("found"); 
 
    } else { 
 
     alert("not found"); 
 
    } 
 
    } 
 
</script>


UPDATE:如果你想生成一个字符串的正则表达式,然后使用RegExp构造。

<div onclick="check()">CLICK HERE</div> 
 

 
<script> 
 
    function check() { 
 
    var str = "abcdefg", 
 
     check = "abc"; 
 
    if (new RegExp('\\b' + check + '\\b').test(str)) { 
 
     alert("found"); 
 
    } else { 
 
     alert("not found"); 
 
    } 
 
    } 
 
</script>

参见:Converting user input string to regular expression

+1

@arectiyurokiyw尝试的正则表达式,然后使用'(新的RegExp( '\\ B' + XX + '\\ B'))测试(str)' –

+2

@arectiyurokiyw这里采访发生了吗?提供的解决方案不适用于您或什么? – Jai

+1

@arectiyurokiyw https://jsfiddle.net/6r4o5278/7/ –