正規表現 JAVA Script 新しいページはコチラ
提供: yonewiki
(→"*?","+?","??",: +/?直後のクェスションマーク(最小マッチング) */) |
(→概要) |
||
55行: | 55行: | ||
===="*?","+?","??", */+/?直後のクェスションマーク(最小マッチング)==== | ===="*?","+?","??", */+/?直後のクェスションマーク(最小マッチング)==== | ||
::理解しづらい表現の一つになりますが、上記までに指定した記号による、繰り返し文字マッチングはここで紹介する方法を利用しない限りは最長のマッチングを優先します。ex9では超+文字列という検索にたいしては、超超超超文字列という結果になっていましたが、超+?文字列だと最小の1文字でのマッチが優先され、3番目の文字でのモノに一致し、超文字列という結果になります。ex10では、?は0文字か1文字に一致しますが、最小なので、一致したとしても0文字が優先され、超文字列という結果ではなく、※4番目の文字からのモノに一致し、文字列という結果になります。英語ではlazyとかnon-greedyといわれていることから、それに対応する日本語として、ものぐさマッチングと呼ばれます。 | ::理解しづらい表現の一つになりますが、上記までに指定した記号による、繰り返し文字マッチングはここで紹介する方法を利用しない限りは最長のマッチングを優先します。ex9では超+文字列という検索にたいしては、超超超超文字列という結果になっていましたが、超+?文字列だと最小の1文字でのマッチが優先され、3番目の文字でのモノに一致し、超文字列という結果になります。ex10では、?は0文字か1文字に一致しますが、最小なので、一致したとしても0文字が優先され、超文字列という結果ではなく、※4番目の文字からのモノに一致し、文字列という結果になります。英語ではlazyとかnon-greedyといわれていることから、それに対応する日本語として、ものぐさマッチングと呼ばれます。 | ||
+ | |||
===="[ ~ ]" 大カッコ、ブラケットマーク(羅列検索条件)==== | ===="[ ~ ]" 大カッコ、ブラケットマーク(羅列検索条件)==== | ||
116行: | 117行: | ||
::ex20(2).'''"文字列正規表現検索Regular Expression".match(/超{0,}文字列/)''' | ::ex20(2).'''"文字列正規表現検索Regular Expression".match(/超{0,}文字列/)''' | ||
::結果:文字列 ※0番目の文字からのモノに一致し、検索した文字列と一致したという結果になります。 | ::結果:文字列 ※0番目の文字からのモノに一致し、検索した文字列と一致したという結果になります。 | ||
+ | |||
+ | |||
+ | ::上限のある場合で10回以内の繰り返しに一致するには以下のように",10"とします。以下の例でも超が11以上あっても10を限度とした一致をする結果が得られます。 | ||
+ | ::ex20(2).'''"超超超超文字列正規表現検索Regular Expression".match(/超{,2}文字列/)''' | ||
+ | ::結果:文字列 ※3番目の文字からのモノに一致し、検索した文字列と一致したという結果になります。 | ||
+ | |||
====/^ ~ /(先頭文字指定)==== | ====/^ ~ /(先頭文字指定)==== |