正規表現と以下の単語を考えると、区切り文字の後の部分が数字であり、その後に何も来ない場合にのみ、 - の後の部分(_またはスペースでもかまいません)を一致させたいです(基本的に数字になりたい番号のみ)。グループステートメントを使用していますが、正しく機能していないようです。最初の 3 (または、少し変更すると最後の 1) に一致し続けます。(グループ化を使用して)これを達成するにはどうすればよいですか?
ターゲットワード:BR0227-3G1
正規表現:([A-Z]*\s?[0-9]*)[\s_-]*([1-9][1-9]*)
3G1、G1、1G と一致してはいけません
3、10、2 などの純粋な数字のみに一致する必要があります。
正規表現を評価するためのヘルパー Web サイトもここにあります: http://www.pythonregex.com/
その他の例:
一致する必要があります:
BR0227-3
BR0227 3
BR0227_3
グループに(BR0227) (3)
のみ一致(BR0227)
する必要があります
BR0227-3G1
BR0227-CS
BR0227
BR0227-