我目前正在使用Javascript Search()方法在字符串中搜索匹配项。 我想找到最接近的匹配,例如,如果该字符串是' apple iphone',并且一个人搜索“iphone 6'我希望有匹配,但由于某种原因,.search方法不会这样做。
有没有更有效的方法来使用这个或其他更有用的方法?
const test = "apple iphone"
// this doesn't return -1 indicating there was a match
console.log(test.search('iphone'))
// this returns -1 indicating there wasn't any match at all despite there
// being the word "iphone" in there
console.log(test.search('iphone 5'))
答案 0 :(得分:1)
您可以使用以下示例代码。
service.something
答案 1 :(得分:1)
Match two strings with the same word in JavaScript
从上面的答案中,我认为流动的代码就是你要找的东西:
<script>
var m = "apple iphone".split(' ');
var n = "iphone 6".split(' ');
var isOk=0;
for (var i=0;i<m.length;i++)
{
for (var j=0;j<n.length;j++)
{
var reg = new RegExp("^"+m[i]+"$", "gi");
if (n[j].match(reg) )
{isOk=1;break;}
}
}
if (isOk==1)
alert("match");
</script>
答案 2 :(得分:0)
如果你的意思是搜索某些东西&#39; apple&#39; 或&#39; iphone&#39;,将其用作条件。
'iphone'.search(/apple|iphone/); //this doesn't return -1
'iphone 5'.search(/apple|iphone/); //this doesn't return -1