我想要一個表達來驗證摩納哥的板塊。它們的寫法如下:
- A123
- 123A
- 1234
我開始做:
^[a-zA-Z0-9]{1}?[0-9]{2}?[a-zA-Z0-9]{1}$
但是A12A是錯誤的情況是可能的。
uj5u.com熱心網友回復:
您可以使用
^(?!(?:\d*[a-zA-Z]){2})[a-zA-Z\d]{4}$
請參閱正則運算式演示。詳情:
^- 字串的開始(?!(?:\d*[a-zA-Z]){2})- 如果有兩次出現的任何零個或多個數字后跟緊跟當前位置右側的兩個 ASCII 字母,則匹配失敗的負前瞻[a-zA-Z\d]{4}- 四個字母數字字符$- 字串結束。
uj5u.com熱心網友回復:
您可以使用 3 種替代方法撰寫模式,指定示例資料的所有允許變化:
^(?:[a-zA-Z][0-9]{3}|[0-9]{3}[a-zA-Z]|[0-9]{4})$
查看正則運算式演示。
請注意,您可以省略{1}和
要不匹配 2 個字符 AZ,您可以將交替寫為:
^(?:[a-zA-Z]\d{3}|\d{3}[a-zA-Z\d]|\d[a-zA-Z\d][a-zA-Z\d]\d)$
查看另一個正則運算式演示。
uj5u.com熱心網友回復:
所以它需要3個連接的數字和1個字母或數字。
然后你可以使用這個模式:
^(?=.?[0-9]{3})[A-Za-z0-9]{4}$
前瞻(?=.?[0-9]{3})斷言 3 個連接的數字。
在此處測驗 Regex101
轉載請註明出處,本文鏈接:https://www.uj5u.com/yidong/460132.html
標籤:正则表达式
上一篇:試圖突出條件格式的價值
