はこれを一致する正規表現を作成します仕事:正規表現2つの一致するグループと、オプションの
^([a-z]{2}[a-z]?)[(P|G)(.*)]?
Ps:物事やdownvoteを複雑にしないでください!
はこれを一致する正規表現を作成します仕事:正規表現2つの一致するグループと、オプションの
^([a-z]{2}[a-z]?)[(P|G)(.*)]?
Ps:物事やdownvoteを複雑にしないでください!
これを試してみてください:
^([a-z]{2}[a-z]?)(?:(P|G)(.*))?
がlive demoを参照してください。
これは使用非捕捉1,2,3
角括弧形と番号キャプチャグループを保持する捕捉基を形成することなく、グループオプション部分に基(構文(?:...)
)をa 文字クラス、これはあなたが意図したものではありません。
[非キャプチャグループ](http://stackoverflow.com/questions/3512471/what-is-a-non-capturing-group)と角括弧の違いは何ですか? – user3995789
** [(\ [az \] {2})(?:(\ [GP \])(\ [az \] *))?](https://regex101.com/r/ uV3tQ9/1)** – rock321987