javascript入門/正規表現のmatchを使った基本的な書き方
javascript入門/正規表現の使い方の基本的な書き方について紹介します。
目次
javascriptの正規表現の基本
RegExpオブジェクトという文字のパターンを記述する為のオブジェクトを作ります。
1 |
<strong>var regexp = new RegExp("パターン");</strong> |
“パターン” は”マッチする条件”です。
正規表現リテラルを使って以下のようによりシンプルに書く事ができます。
1 |
<strong>var regexp = /パターン/;</strong> |
パターンはできたので、実際にそれを使ってマッチングを行ってみましょう。
1 |
<strong>"調べたい文字列".match(regxp);</strong> |
RegExpオブジェクトはStringオブジェクトのmatch()メソッドの引数として与えます。
もちろん以下のようにRegExpオブジェクト変数に格納せず直接引数として与えても良いです。
1 |
<strong>"調べたい文字列".match(/パターン/);</strong> |
これが正規表現を使ったパターンマッチングの流れです。
match()メソッドを使いましたが Regexpオブジェクトのメソッドであるtest()やexec()を使う方法もあります。
1 2 |
<strong>/パターン/.test("調べたい文字列"); /パターン/.exec("調べたい文字列");</strong> |
最も単純なマッチング
1 |
"___aaa___".match(/aaa/); |
どこでも良いので “aaa” という文字列があればマッチングします。
この場合マッチングしますので “aaa” という文字列を要素に持った Arrayオブジェクトが返されます。
1 |
"___aaa___".match(/bbb/); |
“bbb” という文字列はどこにもないのでマッチングしません。その場合 NULL型が返されます。
この程度のマッチング条件でしたらindexOfで十分です。正規表現にはもっと細かくマッチングする条件を決める事ができます。次はそれを紹介していきます。
ちなみにjavascriptのコードを確認するにはChromeだと、
ツール > デベロッパーツール > Consoleタブを選択
ここにjavascirptのコードをコピペなり打ち込んでエンターを押すだけで簡単に確認できます。