正規表現 JAVA Scriptのソースを表示
新しいページはコチラ
移動:
案内
,
検索
== '''概要''' == 以下に正規表現 JAVA Scriptのパターンマッチについて解説を記します。 *検索 ::/ ~ / のように"/"まれた部分に書いた文字が検索文字になります。例えば ::*ex1:'''"文字列正規表現検索Regular Expression".match(/Regular/)''' ::結果:Regular ※9番目の文字からのモノに一致。 ::とした場合、Regularという文字列を検索し、文字列の中盤の文字列配列番号9に一致し、Regularという文字列が検索結果として返却される。一致しなければnullが返却される。 ::"." ドットは何らかの文字一文字以上に対応 ::*ex2:'''"文字列正規表現検索Regular Expression".match(/.文字列/)''' ::結果:null ※文字列というキーワードなら存在するが、先頭にあるため、何らかの文字が無いので検索結果は不一致となる。つまり、「超文字列」という文章を対象に同じ検索をすると一致する。そして、検索の結果、なんらかの文字も"超"であり、超文字列だと判明する。 ::*ex3:'''"超文字列正規表現検索Regular Expression".match(/.文字列/)''' ::結果:超文字列 ※0番目の文字からのモノに一致。 ::*ex4:'''"文字列正規表現検索Regular Expression".match(/..表現/)''' ::結果:正規表現 ※3番目の文字からのモノに一致。 ::".." 2連続ドットなら、なんらかの文字2つに表現となる文字列を検索していることになる。 ::"*" アスタリスクは直前の文字ゼロ文字以上に対応 ::*ex5:'''"超文字列正規表現検索Regular Expression".match(/超*/)''' ::結果:超 ※0番目の文字からのモノに一致。繰り返しの文字がなくても、あっても文字列というキーワードがあれば一致します。 ::*ex6:'''"超超超超超文字列正規表現検索Regular Expression".match(/超*/)''' ::結果:超超超超超 ※0番目の文字からのモノに一致し、繰り返している分だけ一致した文字が返却される。 ::*ex7:'''"文字列正規表現検索Regular Expression".match(/超*文字列/)''' ::結果:文字列 ※0番目の文字からのモノに一致し、超は使われていなくても良く、以降に書かれた文字列というキーワードにさえ一致すればよいということにも注意が必要です。 ::"+" プラスは直前の文字1文字以上に対応 ::*ex8:'''"文字列正規表現検索Regular Expression".match(/超+文字列/)''' ::結果:null ※一致する部分はなくなります。超は少なくとも1回以上使われていないと一致したことにならず、以降に書かれた文字列というキーワードがあっても、一致しないことになります。"*"とは意味が異なることに注意が必要です。 ::*ex9:'''"超超超超文字列正規表現検索Regular Expression".match(/超+文字列/)''' ::結果:超超超超文字列 ※0番目の文字からのモノに一致し、以降に書かれた文字列というキーワードがあれば、一致します。繰り返されていれば"*"と同じような一致が起こるということです。 ::"?" クェスチョンマークは直前の文字0文字か1文字に対応 ::*ex10:'''"超超超超文字列正規表現検索Regular Expression".match(/超?文字列/)''' ::結果:超文字列 ※3番目の文字からのモノに一致(4文字目)し、0番目から2番目の繰り返しは無視されます。超がなくても文字列というキーワードだけでも一致は起こります。次の例に示すような感じです。 ::*ex11:'''"文字列正規表現検索Regular Expression".match(/超?文字列/)''' ::結果:文字列 ※0番目の文字からのモノに一致し、超がなくても文字列というキーワードだけでも一致は起こります。 ::"[~]" カッコに囲まれた文字のどれかを検索する ::例えば、a,b,c,d,e,f,g,h,i,jのいずれかの文字のどれかがあるか?という検索は ::*ex12:'''"文字列正規表現検索Regular Expression".match(/[abcdefghij]/)''' ::結果:e ※10番目の文字からのモノに一致し、一致する文字があったという結果になります。 ::ex12のようにa~jというアルファベットをすべて記述するのではなく[a-j]として省略して記述することができます。 ::*ex13:'''"文字列正規表現検索Regular Expression".match(/[a-j]/)''' ::結果:e ※10番目の文字からのモノに一致し、一致する文字があったという結果になります。 ::ex13の正規表現検索に対してさらに、大文字の全ても含めることにする場合 ::*ex14:'''"文字列正規表現検索Regular Expression".match(/[a-jA-Z]/)''' ::結果:R ※9番目の文字からのモノに一致し、一致する文字があったという結果になります。ex13では検索結果がeでしたが、その手前にあるRで一致するように変化しています。 ::::"[^ ~ ]" カッコに囲まれた文字以外 ::例えば、A~Zあるいは、文,字,列,正,規,表,現,検,索,のいずれかの文字以外はあるか?という検索は ::*ex15:'''"文字列正規表現検索Regular Expression".match(/[A-Z文字列正規表現検索]/)''' <yjavascript> document.write("文字列正規表現検索Regular Expression".match(/[A-Z文字列正規表現検索]/), "</BR>"); </yjavascript>
正規表現 JAVA Script
に戻る。
個人用ツール
ログイン
名前空間
ページ
議論
変種
表示
閲覧
ソースを表示
履歴表示
操作
検索
案内
メインページ
コミュニティ・ポータル
最近の出来事
最近の更新
おまかせ表示
ヘルプ
ツールボックス
リンク元
関連ページの更新状況
特別ページ