2012-04-10 127 views
1

我想爲我的字符串創建一個模式:它應遵循以下規則:
第1個地方只包含4位數字。
二路地方只包含一個「 - 」。
第3位只包含3位數字。
第四名只包含一個「 - 」。
第5個地方只包含3位數字。
第6位只包含6位數字。
第7位中只包含一個「 - 」。
第8位只包含1位數字。創建正則表達式模式

某事像這樣:0010-155-072-120410-0

我用這個,但不行:'/[1-9]{4}-[1-9]{3}-[1-9]d{3}-[1-9]{6}-[1-9]{1}/'

+1

你基本上是正確的。你的錯誤是你應該輸入'[0-9]'來包含數字0,你也應該刪除'd' – ANisus 2012-04-10 09:47:13

+0

請提及你正在使用的語言。正則表達式有很多種不同的形式。 – reinierpost 2012-04-10 10:56:07

回答

3
'/^\d{4}-\d{3}-\d{3}-\d{6}-\d$/' 

使用此。在你的例子中,你在中間有額外的"d"個字符。
另外不要忘記包括開始和結束符號,以避免開始和結束時多餘的字符。

+0

你爲什麼要保留「{1}」位? – 2012-04-10 10:19:10

+0

哦,是的......我只是複製了OP的答案並進行了編輯。 – 2012-04-10 10:53:25