文字が別の文字列内に出現する回数を判断する方法はありますか?
そうでない場合、文字列が配列内にある回数を特定できますか
配列でそれができる場合、次のような 2 つの単語をどのように分割できますか: Hello, World! 次のように、2 つの単語の配列に変換します。
["Hello", "World"]
文字が別の文字列内に出現する回数を判断する方法はありますか?
そうでない場合、文字列が配列内にある回数を特定できますか
配列でそれができる場合、次のような 2 つの単語をどのように分割できますか: Hello, World! 次のように、2 つの単語の配列に変換します。
["Hello", "World"]
もちろん。頭に浮かぶシンプルなワンライナーは
var numOccurrences = str.split("<char>").length -1
where は、テストしたい任意の文字 (または文字列) に置き換えることができます
これにより、出現ごとに文字列が分割され、結果の配列の長さが-1になります。これにより、発生回数がわかります。
大文字/小文字を無視してやりたい場合は、正規表現を使用できます
str.match(/<char>/gi).length
これは次のように見つけることができます。
"Hello World Hello World!".match(/e/g).length // Will result in 2
/e/g は、文字「e」に一致する正規表現です。「g」は「グローバル」を表し、文字列内のすべての出現を取得します。
これは次のように見つけることができます。
var arrayOfStrings = ["Hello", "World", "Hello", "World"],
wordCount = 0,
i;
for (i = 0; i < arrayOfStrings.length; i += 1) { // Remember to optimise length call
if (arrayOfStrings[i] === "Hello") {
wordCount += 1;
}
}
console.log(wordCount) // This will log 2