Regular-Expression
什麼是 .gitignore 模式等價於正則表達式 (Big|Small)(State|City)-0−90−90-9*.csv
我有一個
.gitignore
類似於以下內容的正則表達式:(Big|Small)(State|City)-[0-9]*\.csv
它沒有用,所以我針對RegexLab.NET對其進行了測試。
然後我找到了gitignore手冊頁,它讓我了解到 gitignore 不使用正則表達式,而是使用fnmatch(3)。
但是, fnmatch 它似乎沒有等效的擷取組。這是可行的還是我需要把它分成三行?
沒有辦法用 gitignore 支持的模式來表達這個正則表達式。問題不在於缺少擷取組(實際上,您沒有使用擷取組本身),問題在於缺少
|
操作員。你需要把它分成四行。BigState-[0-9]*.csv SmallState-[0-9]*.csv BigCity-[0-9]*.csv SmallCity-[0-9]*.csv
請注意,模式匹配 eg
BigState-4foo.csv
, since*
匹配任何字元序列。除非您願意只匹配固定數量的數字,否則您無法使用 glob 模式做得比這更好。