简体   繁体   English

有没有更好的方法在javascript中实现“字符串包含子字符串”?

[英]Is there a better way to implement "string contains substring" in javascript?

I am looking for better options in Javascript to check if a string contains a substring.我正在 Javascript 中寻找更好的选项来检查字符串是否包含子字符串。 Substring can either be a text from an input field or database.子字符串可以是来自输入字段或数据库的文本。

Sample:样本:

var substring = "DVI to VGA" //some code to get text from input field or database
var string = "12 DVI To VGA adapter"

if(string.toLowerCase().indexOf(substring.toLowerCase()) != -1){
    //any action after match
    console.log("FOUND A MATCH")
}

I can't think of any, but you can encapsulate what you have in a function that is more concise and reusable:我想不出任何,但是您可以将您拥有的内容封装在一个更简洁和可重用的函数中:

function stringContainsSubstring(string, substring) {
    return string.toLowerCase().indexOf(substring.toLowerCase()) != -1;
}

var contains = (string.toLowerCase()).includes(substring.toLowerCase());

not exactly a solution, but you can use it like:不完全是一个解决方案,但您可以像这样使用它:

if(~string.toLowerCase().indexOf(substring.toLowerCase()){...

looks a bit cleaner看起来更干净

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM