正規表現 (Big|Small)(State|City)-[0-9]*\.csv に対応する .gitignore パターンは何ですか?

正規表現 (Big|Small)(State|City)-[0-9]*\.csv に対応する .gitignore パターンは何ですか?

私は次の.gitignoreような正規表現を持っています:

(Big|Small)(State|City)-[0-9]*\.csv

うまくいかなかったのでテストしました。正規表現研究室

それから私は見つけました。ジティーノ語マニュアルページでは、gitignoreは正規表現を使用せず、代わりに試合(3)

しかし、fnmatchにはグループキャプチャと同等の機能がないようです。これは可能ですか、それとも3行に分割する必要がありますか?

答え1

この正規表現は、gitignoreでサポートされているパターンを使用して表現することはできません。問題は欠落しているキャプチャグループではなく(実際にキャプチャグループをそのように使用していない)、問題は欠落している|演算子です。 4行に分けて作成する必要があります。

BigState-[0-9]*.csv
SmallState-[0-9]*.csv
BigCity-[0-9]*.csv
SmallCity-[0-9]*.csv

たとえば、パターンマッチングはBigState-4foo.csvすべての*文字シーケンスと一致します。固定数の数だけを一致させる意図がない場合は、グローバルパターンを使用するとより良い結果が得られません。

関連情報