Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/83.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 在包含多个单词的表中搜索_Javascript_Jquery - Fatal编程技术网

Javascript 在包含多个单词的表中搜索

Javascript 在包含多个单词的表中搜索,javascript,jquery,Javascript,Jquery,我有一个在jquery中搜索多个单词的代码。但是我在搜索“男性”和“女性”这个词时遇到了一个问题。当我输入单词male时,显示结果是雌雄,因为单词femal包含“Fe”+“male”字符,我将如何解决此问题。 当我输入male时,它应该只显示male。只有在我输入“男-女”或“女”时,才会显示女性单词 这是我的演示 您可以使用\b检测单词边界: var s = "There are two sexes: female and male. males are blue, females are r

我有一个在jquery中搜索多个单词的代码。但是我在搜索“男性”和“女性”这个词时遇到了一个问题。当我输入单词male时,显示结果是雌雄,因为单词femal包含“Fe”+“male”字符,我将如何解决此问题。 当我输入male时,它应该只显示male。只有在我输入“男-女”或“女”时,才会显示女性单词

这是我的演示

您可以使用
\b
检测单词边界:

var s = "There are two sexes: female and male. males are blue, females are red";
s = s.replace(/\bmale\b/g, "smurf");
console.log(s);
// There are two sexes: female and smurf. males are blue, females are red"
// both female, males and females don't match \bmale\b
如果没有
\b
,您将得到:

There are two sexes: fesmurf and smurf. smurfs are blue, fesmurfs are red
如果更改此行:

var searchthis = new RegExp($(' #emp_search ').val().replace(/ /g,"|"), 'i');


它是有效的,但这意味着搜索
Jo
也不会给你
John

我真的应该把“\bmale\b”?对不起,我只是编程新手。你看到我的JSFIDLE了吗。嘿还有吗?@Vincent有时候你应该投赞成票,而不是像那样低声说话,这很烦人,根本不鼓励人们帮助你:你能用and或and这样的例子来澄清一下吗:“一行应该包含:约翰或男或女”?这将帮助您准确定义您想要的内容。请更新您的问题,而不是添加新的评论。好的,先生。现在已经好了,先生。谢谢你的建议:)ooppps。。赏金无效。我只是在测试。很高兴知道你做了什么:我希望你一切都清楚。继续享受:)@Vincent你不打算奖励赏金吗?否则就浪费了。
var searchthis = new RegExp($(' #emp_search ').val().replace(/ /g,"|"), 'i');
var searchthis = new RegExp("\\b" + $(' #emp_search ').val().replace(/ /g,"|") + "\\b", 'i');