私は数字のグループを抽出するために必要な文字列のコレクションを持っています。下のパターンでは、値をzzzz
に選択しようとしています。RegEx - 最初の4桁のグループに一致します。
xxxx - yyyy - aaaa - zzzz - any text here - any text here <= Example #1
xxxx - yyyy - zzzz - any text here - any text here <= Example #2
私はデータについては、以下を知っている:
- xxxは常にyyyyはZZZZは、常に正確に4桁 から構成されることになる数字やアルファベット文字
- 可能性が3桁
- になります
- aaaaは任意の文字列である可能性がありますが、例2のように完全に欠落している可能性もあります。
私はもともと、正規表現(?!1111)\d{4}
のようにNegative Lookaheadを使うことができると考えていました。なぜなら、シーケンス1111
は通常4桁の数字の前に来たからです。
432から1111 - - ストア
411から1111 - - 学校
それは以下のように必ずしもそうではありませんが。
321 - StorageZone - - また倉庫
は時々1111
私はキャプチャしたかった位置にありました。
002から1111 - - マシンルーム(それは1111年の2番目のインスタンスであるので、ここで私は111を選択したい)
981から0110 - - 地下室(ここでは1111が数Iであります
私はzzzz
の値をキャプチャする方法に困惑し、いくつかの正規表現のアドバイスを使用することができます。ありがとう。 JavaScriptの表記で
「任意のテキスト」は4桁の数字ですか? –
@PM - いいえ...決して4桁にはなりません – webworm