条件分岐で test をよく使います。
test は正規表現パターンと文字列の一致を true, false で返します。
完全一致、部分一致、前方一致、後方一致など、使い方を忘れやすいのでまとめます。
基本的な使い方はこれ。
/パターン/.test('検索したい文字列')
// 例 (URLに qiita が含まれるか)
const url = window.location.href
if ( /qiita/.test(url) ) {
console.log('qiita')
}
完全一致
単数
^(先頭が一致) と $(末尾が一致)を使う。
(=== を使えば良いのであまり使わないけど・・・)
/^qiita$/.test('検索したい文字列')
複数
() で囲って | でつなぐ。
/^(qiita|hoge|huge)$/.test('検索したい文字列')
部分一致
完全一致がわかれば簡単。
^ と $ を取るだけ。
// 単数
/qiita/.test('検索したい文字列')
// 複数
/qiita|hoge|huge/.test('検索したい文字列')
前方一致 後方一致
これも簡単。
() でくくって、
前方一致なら先頭に ^ を
後方一致なら末尾に $ をつける。
// 前方一致 単数
/^qiita/.test('検索したい文字列')
// 前方一致 複数
/^(qiita|hoge|huge)/.test('検索したい文字列')
// 後方一致 単数
/qiita$/.test('検索したい文字列')
// 後方一致 複数
/(qiita|hoge|huge)$/.test('検索したい文字列')
大文字小文字どちらでも一致させる
正規表現のオプション i をつける。
/qiita/i.test('検索したい文字列')