次の 2 つの文字列を指定します。
var first = 'dog,cat,lion';
var second = 'cat';
2 番目の変数が最初の変数の単語 (コンマで区切られた単語) のいずれかであるかどうかを知るにはどうすればよいですか?
次の 2 つの文字列を指定します。
var first = 'dog,cat,lion';
var second = 'cat';
2 番目の変数が最初の変数の単語 (コンマで区切られた単語) のいずれかであるかどうかを知るにはどうすればよいですか?
使用できますArray.indexOf
:
if( first.split(',').indexOf(second) > -1 ) {
// found
}
IE8 のサポートが必要ですか? シムを使用する: https://developer.mozilla.org/en-US/docs/JavaScript/Reference/Global_Objects/Array/indexOf
これはうまくいきます:
if( first.match(new RegExp("(?:^|,)"+second+"(?:,|$)"))) {
// it's there
}
まず、文字列を配列に分割します。
var second = 'cat';
var first = 'dog,cat,lion';
var aFirst = first.split(',');
次に、新しい配列を循環します
for (var i = 0; i < aFirst.length; i++) {
if (aFirst[i] == second) {
alert('jay!');
}
}
var first = 'dog,cat,lion';
var stringArray = first.split(',');
for (var i=0; i<stringArray.length; i++) {
if (stringArray[i].match("cat")) {
alert('Its matched');
}
}
var first = 'dog, cat, lion';
var second = 'cat';
// \b is a word boundary
// a word character, \w, consists of letters, digits and underscore
// remove the second paramater "i" if you want case-sensitive match
var containsRE = new RegExp(second, "i");
var startsWithRE = new RegExp("\\b"+second, "i");
var endsWithRE = new RegExp(second+"\\b", "i");
var exactRE = new RegExp("\\b"+second+"\\b", "i");
// test exactRE, for example, like so
if(exactRE.test(first)) {
// matched
}