正規表現についての質問です。


/(?=[!_%])/

上記は何を意味しているのでしょうか?

色々調べたのですがよくわかりません。

教えてください。

回答の条件
  • 1人50回まで
  • 登録:
  • 終了:2014/12/25 19:14:10
※ 有料アンケート・ポイント付き質問機能は2023年2月28日に終了しました。

ベストアンサー

id:a-kuma3 No.1

回答回数4973ベストアンサー獲得回数2154

ポイント100pt

(?=正規表現) は、「肯定先読み」と言われる表現です。
中に記述してある正規表現の直前にマッチします。
直前というのは、文字ではなくて、文字の隙間。
^ や $ が、行頭や行末を表すように、文字ではなくて、文字の前後にマッチします。

質問に書かれた /(?=[!_%])/ という正規表現は、"!" 、"_" 、もしくは "%" の文字の直前を表します。

id:a-kuma3

英語の方が、意味が分かりやすいかもしれません。

(?=X)   X, via zero-width positive lookahead

Pattern (Java Platform SE 7 )
2014/12/25 19:16:23
id:situmon2014

大変勉強になりました、ご回答ありがとうございました!

2014/12/25 19:18:55

その他の回答0件)

id:a-kuma3 No.1

回答回数4973ベストアンサー獲得回数2154ここでベストアンサー

ポイント100pt

(?=正規表現) は、「肯定先読み」と言われる表現です。
中に記述してある正規表現の直前にマッチします。
直前というのは、文字ではなくて、文字の隙間。
^ や $ が、行頭や行末を表すように、文字ではなくて、文字の前後にマッチします。

質問に書かれた /(?=[!_%])/ という正規表現は、"!" 、"_" 、もしくは "%" の文字の直前を表します。

id:a-kuma3

英語の方が、意味が分かりやすいかもしれません。

(?=X)   X, via zero-width positive lookahead

Pattern (Java Platform SE 7 )
2014/12/25 19:16:23
id:situmon2014

大変勉強になりました、ご回答ありがとうございました!

2014/12/25 19:18:55
id:situmon2014

大変勉強になりました、ご回答ありがとうございました!

コメントはまだありません

この質問への反応(ブックマークコメント)

「あの人に答えてほしい」「この質問はあの人が答えられそう」というときに、回答リクエストを送ってみてましょう。

これ以上回答リクエストを送信することはできません。制限について

回答リクエストを送信したユーザーはいません