我需要驗證包含一個數字(數字不能爲0或開頭爲零)的字符串或數字後跟在a-z或A-Z範圍內的單個字符。所以,這些都是有效的用於驗證數字和字符的正則表達式
2, 12, 1, 324534A, 2Y, 934d
,但這些都是無效
000R, 0, 0D, D3, 23432dddd, 234Q343.
有人能告訴我這樣做的正確的正則表達式表達?
我需要驗證包含一個數字(數字不能爲0或開頭爲零)的字符串或數字後跟在a-z或A-Z範圍內的單個字符。所以,這些都是有效的用於驗證數字和字符的正則表達式
2, 12, 1, 324534A, 2Y, 934d
,但這些都是無效
000R, 0, 0D, D3, 23432dddd, 234Q343.
有人能告訴我這樣做的正確的正則表達式表達?
這應該匹配。
^[1-9]\d*[a-zA-Z]?$
擊穿:
^ - Match start of string
[1-9] - Followed by one digit (1-9), no 0
\d* - Followed by any number of digits (can contain digits from
other cultures). If you want to constain use [0-9] instead of \d
[a-zA-Z]? - Followed by either one character or none
$ - Followed by end of string
@ t3hn00b - 正確。正在更新,因爲你正在評論。不清楚字符串中是否允許有'0',但看起來像是。 – Oded
感謝Oded的格式整理。 –
順便說一句 - 我建議學習正則表達式 - 它是一個有用的工具。掌握正則表達式是關於這個問題的最好的書。 – Oded
只要我讀完了EF上的這本書,我就會看看Regex。 –