JavaScriptで文字列に配列の部分文字列が含まれているかどうかを確認するにはどうすればよいですか?

Susan Sarandon
リリース: 2024-11-01 04:59:02
オリジナル
156 人が閲覧しました

How to Check if a String Contains Any of the Substrings from an Array in JavaScript?

JavaScript 配列を使用した文字列内の部分文字列の検索

文字列に配列の部分文字列が含まれているかどうかを判断するために、JavaScript は柔軟なアプローチを提供します.

Array Some Method

some メソッドは配列を反復処理し、各要素をテストするコールバック関数を提供します。部分文字列を確認するには、indexOf() メソッドを使用して文字列内の各配列要素を検索します。

<code class="js">if (substrings.some(function(v) { return str.indexOf(v) >= 0; })) {
    // There's at least one substring match
}</code>
ログイン後にコピー

正規表現

正規表現は強力な方法を提供しますテキストパターンと一致させるため。文字列内の配列内の任意の部分文字列を検索するには、代替オプションとしてすべての部分文字列を含む正規表現を作成し、test() メソッドを使用します。

<code class="js">const regex = new RegExp(substrings.join("|"));
if (regex.test(str)) {
    // At least one substring matches
}</code>
ログイン後にコピー

Example

部分文字列の配列を考えてみましょう:

<code class="js">const substrings = ["one", "two", "three"];</code>
ログイン後にコピー

部分文字列が一致する文字列

<code class="js">const str = "This string includes \"one\".";

// Using array some method
const someMethodMatch = substrings.some(v => str.includes(v));

// Using regular expression
const regexMatch = str.match(new RegExp(substrings.join("|")));</code>
ログイン後にコピー

部分文字列が一致しない文字列

<code class="js">const str = "This string doesn't have any substrings.";

// Using array some method
const someMethodNoMatch = substrings.some(v => str.includes(v));

// Using regular expression
const regexNoMatch = str.match(new RegExp(substrings.join("|")));</code>
ログイン後にコピー

結果

Test Method String with Match String without Match
Array some someMethodMatch = true someMethodNoMatch = false
Regular expression regexMatch = true regexNoMatch = null

以上がJavaScriptで文字列に配列の部分文字列が含まれているかどうかを確認するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート
私たちについて 免責事項 Sitemap
PHP中国語ウェブサイト:福祉オンライン PHP トレーニング,PHP 学習者の迅速な成長を支援します!