我正在做一個字符串驗證,使用findstr
及其/r
標誌來允許正則表達式。特別是我想驗證整數。findstr中的正則表達式
正則表達式
^[0-9][0-9]*$
工作的罰款對於非負數,但因爲我現在支持負數以及我試圖
^([1-9][0-9]*|0|-[1-9][0-9]*)$
爲正或負的整數或零。
正則表達式工作正常理論上。我在PowerShell中測試了它,它匹配我想要的。但是,
findstr /r /c:"^([1-9][0-9]*|0|-[1-9][0-9]*)$"
它沒有。
雖然我知道findstr
沒有最先進的正則表達式支持(甚至低於Notepad ++這可能是一個相當成就),但我會期望這樣簡單的表達式工作。
任何想法我在做什麼錯在這裏?
編者按:在* Windows *的標籤是有點多餘,因爲'findstr'只存在有... – Joey 2010-04-10 15:41:01
羅塞爾:標籤是有幫助尋找的東西。在這種情況下適度的冗餘不會造成傷害。 – jfs 2010-04-10 20:18:43
我永遠不會搜索像* windows * ;-)這樣擁擠的標籤,但如果您認爲它會有幫助... – Joey 2010-04-10 22:44:10