我必須編寫一個匹配模式1-6/2011
的正則表達式。 在這種情況下,/
之前的數字不能大於12
。 所以我必須選擇1-12
之間的數字。正則表達式問題我堅持
我寫了一個正則表達式:
^[1-9][0-2]?\s*[-−—]\s*[1-9][0-2]?\s*/\s*2[01][0-9][0-9]$
不過,在這裏我得到20-6/2014也作爲搭配。
我試着用負向後看:
^[1-9](?<![2-9])[0-2]?\s*[-−—]\s*[1-9](?<![2-9])[0-2]?\s*/\s*2[01][0-9][0-9]$
在這裏,個位數都沒有得到確定。
使用'|'更多。你可以像這樣匹配所有數字1-12:'([1-9] | 1 [0-2])' –