jQueryのmatchメソッドを使うと、特定の文字列が含まれているかを判別する事ができます。これを使う事で、特定のクラスを持つ要素や、特定のURLの場合などでスタイルを当てたり処理をする事ができます。
今回は、このmatchメソッドについて解説していきます。
matchメソッドとは
matchメソッドとは、指定した文字列で検索をかけてマッチしたデータを配列に格納するメソッドです。
if文を使用する事で判定にも利用する事ができ、今回はそのif文での判定を使って判別していきます。
matchメソッドの使い方
今回行う特定の文字列が含まれているかの判別は、if文を使用します。
まずは以下のコードをご覧ください。
$(function(){
const url = location.href;
if(url.match('test')){
//ここに条件に合う場合の処理を記述
}
)};
このように、matchメソッドの中に検索したい文字列を記述します。
上記の場合は、最初に現在のページのURLを取得し、if文で取得したURLに「test」の文字列が入っているかどうかの分岐をしています。
今回は検索する文字列を指定する事で、変数「url」に代入されている文字列に部分一致するかどうかの分岐となっていますが、matchメソッドでの指定には1つの文字列のみ以外に、正規表現や複数の文字列の指定も可能です。
以下は複数の文字列の指定のサンプルコードになります。
$(function(){
const url = location.href;
if(url.match('abc|123')){
//ここに条件に合う場合の処理を記述
}
)};
複数の条件の場合は「|」で区切る事でor検索と同じとなります。上記の場合は現在のURLに「abc」または「123」が含まれている場合に処理を行います。
今回は、現在のURLに特定の文字列が含まれているか判別して分岐していますが、クラス名など他の条件でも可能です。そうする事でいろいろな場面で簡単に利用する事ができるようになります。
さいごに
いかがでしたでしょうか。
今回は、jQueryで特定の文字列が含まれているかmatchメソッドを使って判別する方法を解説しました。
matchメソッドを使う事で特定の条件下で処理を出来ますので、上手く使ってみてください。