我在做一個文件搜索,我想排除其中包含min
的文件,但我不想匹配部分文字。正則表達式 - 匹配整個字符串或模式
,所以我想排除:
一個名爲min
也是一檔名爲jhkjahdf-min.txt
但我不想排除:
一個文件名爲mint.txt
謝謝你在先進的幫助。你給出的正則表達式的解釋會有很多額外的幫助。
我使用PHP的的preg_match()函數
我在做一個文件搜索,我想排除其中包含min
的文件,但我不想匹配部分文字。正則表達式 - 匹配整個字符串或模式
,所以我想排除:
一個名爲min
也是一檔名爲jhkjahdf-min.txt
但我不想排除:
一個文件名爲mint.txt
謝謝你在先進的幫助。你給出的正則表達式的解釋會有很多額外的幫助。
我使用PHP的的preg_match()函數
有些東西叫做字界(\b
)。它們不會消耗字符,但是如果您從單詞字符(字母,數字,下劃線)轉換爲反之亦然的非單詞字符,則匹配。所以這是一個很好的第一近似:
`\bmin\b`
現在,如果你要考慮數字和下劃線的字邊界,也它變得更復雜一些。然後,你需要負向前看符號和lookbehinds,這並非所有的正則表達式引擎支持:
`(?<![a-zA-Z])min(?![a-zA-Z])`
這些也將不列入比賽(如果你關心的話),而只是斷言,min
既不是在之前或之後沒有一封信。
你會想\b
這意味着錨定你的正則表達式「字的邊界。」