2012-03-22 121 views
8

我正在嘗試編寫一個以數字0或任何字母(基本上不能以1-9開頭)開頭的RegEx。它也必須是13個字符長RegEx以字母或數字開頭0

我有這一點,但它似乎不工作:

"^[0][a-zA-Z]{13}" 
+0

您的RegEx翻譯爲「0」,後面跟着13個字母「 – 2012-03-22 00:43:26

+0

這是否是家庭作業? – gbulmer 2012-03-22 00:46:02

+0

@gbulmer它不是作業。根據用戶輸入執行特定類型的搜索 – mint 2012-03-22 00:46:52

回答

14

試試這個正則表達式來代替:

"^[0a-zA-Z].{12}$" 

[0a-zA-Z]的意思是「一個字,那就是無論是一個0,az中的一個或AZ中的一個「。

.{12}意味着12個以上的字符,無論它們是什麼。

+0

感謝您的解釋,這很好,我之前有類似的東西,但沒有使用。{12}和wa代替使用{13}。 – mint 2012-03-22 00:45:33

+1

如果我想把最後十二位數字作爲數字,我會做''^ [0a-zA-Z] [0-9]。{12} $「'? – mint 2012-03-22 00:48:26

+3

@mint''^ [0a-zA-Z] [0-9] {12} $「' – gbulmer 2012-03-22 00:55:13

1

您正在尋找這樣的事情:

^[0\w]\S{12}$ 

該規定的第一個字符必須爲0或單詞字符。後面緊跟着12個不是空白的字符(這允許0-9,字符和特殊字符)。用任何你喜歡的東西重新將\ S重新分隔。例如[0-9 \ w]

測試正則表達式是:http://regexpal.com/我經常用它來測試正則表達式