BT
(大文字と小文字を含む)で始まる文字列を拒否したい例-BT444CC
元の正規表現:
^([Gg][Ii][Rr] 0[Aa]{2})|((([A-Za-z][0-9]{1,2})|(([A-Za-z] [A-Ha-hJ-Yj-y][0-9]{1,2})|(([A-Za-z][0-9][A-Za-z])|([A-Za-z][A-Ha-hJ-Yj-y][0-9]?[A-Za-z]))))\s?[0-9][A-Za-z]{2})$
正規表現のネガティブルックビハインド:
(?<!([bB][tT]))(^([Gg][Ii][Rr] 0[Aa]{2})|((([A-Za-z][0-9]{1,2})|(([A-Za-z] [A-Ha-hJ-Yj-y][0-9]{1,2})|(([A-Za-z][0-9][A-Za-z])|([A-Za-z][A-Ha-hJ-Yj-y][0-9]?[A-Za-z]))))\s?[0-9][A-Za-z]{2})$)
しかし、この正規表現はまだ受け入れていBT444CC
ます2番目のグループはt
、これを防ぐ方法をキャプチャしていますか?
後読みは必要ありません(?![Bb][Tt])
。文字列の先頭に先読みが必要です。
また、パターン全体をキャプチャしないグループで囲む必要があります。そうしないと、先読みによって最初の前の部分のみが制限され|
ます。
使用できます
^(?![Bb][Tt])(?:[Gg][Ii][Rr] 0[Aa]{2}|([A-Za-z][0-9]{1,2}|([A-Za-z][A-Ha-hJ-Yj-y][0-9]{1,2}|([A-Za-z][0-9][A-Za-z]|[A-Za-z][A-Ha-hJ-Yj-y][0-9]?[A-Za-z])))\s?[0-9][A-Za-z]{2})$
正規表現のデモを参照してください。
この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。
侵害の場合は、連絡してください[email protected]
コメントを追加