条件分岐で 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('検索したい文字列')