我需要將任意良好的舊DOS通配符字符串轉換爲正則表達式字符串,然後與System.Text.RegularExpressions.Regex
一起使用。不幸的是,我的正則表達式知識很尷尬。翻譯文件名通配符爲正則表達式
我試圖圍繞像*.*
,.*
和*.
這樣的東西。我目前的問題是,*.
通常需要匹配以點或以無點爲結尾的文件。
所以我翻譯*.
到^.+[^\.].*$
,但這顯然是錯誤的。它不僅匹配blah
和blah.
,而且還匹配blah.blah
。
那麼什麼是正確的正則表達式語法匹配blah
和blah.
,但不是blah.blah
?
感謝您關注此問題,您的訣竅是。 – sbi 2010-11-08 16:05:09
'\。{0,1}'與'\。?'相同 – Andrey 2010-11-08 16:06:10
(呵呵,結果我不能創建一個名爲'blah.'的文件,試圖創建一個'blah'文件。) – sbi 2010-11-08 16:06:21