文字列に 3 つの部分文字列のいずれかが含まれているかどうかを確認し、含まれている場合は関数を実装する必要があります。を使用して 1 つの部分文字列をチェックできることはわかってif (str.indexOf("term1") >= 0)
いますが、このコードの複数のインスタンスを使用する以外に、複数の部分文字列をチェックする方法はありますか?
ティア
文字列に 3 つの部分文字列のいずれかが含まれているかどうかを確認し、含まれている場合は関数を実装する必要があります。を使用して 1 つの部分文字列をチェックできることはわかってif (str.indexOf("term1") >= 0)
いますが、このコードの複数のインスタンスを使用する以外に、複数の部分文字列をチェックする方法はありますか?
ティア
if (/term1|term2|term3/.test("your string")) {
//youre code
}
ループを使用できます。次のようなヘルパー関数を作成することもできます。
function ContainsAny(str, items){
for(var i in items){
var item = items[i];
if (str.indexOf(item) > -1){
return true;
}
}
return false;
}
次のように呼び出すことができます。
if(ContainsAny(str, ["term1", "term2", "term3"])){
//do something
}
多分これ:
if (str.indexOf("term1") >= 0 || str.indexOf("term2") >= 0 || str.indexOf("term3") >= 0)
{
//your code
}
次のようなことができます
function isSubStringPresent(str){
for(var i = 1; i < arguments.length; i++){
if(str.indexOf(arguments[i]) > -1){
return true;
}
}
return false;
}
isSubStringPresent('mystring', 'term1', 'term2', ...)