[英]Matching alternating alphanumeric characters with regex
我想使用正則表達式匹配以下字母數字組合; ao1 a12 01p p1p 1ap 1p1
。
使用以下正則表達式,我可以匹配除p1p and 1p1
所有p1p and 1p1
:
[az][0-9]{1,2}|[0-9]{1,2}[az]|[az][0-9][az]|[az]{1,2}[0-9]|[0-9][az][0-9]
如何使用正則表達式正確匹配交替的number/letter/number
和letter/number/letter
? 它需要精確匹配3個字符,它們出現在句子中。
您可以使用
(?<!\S)(?=[a-z]{0,2}\d)(?=\d{0,2}[a-z])[a-z\d]{3}(?!\S)
細節
(?<!\\S)
-空格或字符串開頭應位於當前位置的左側 (?=[az]{0,2}\\d)
-當前位置右側緊靠0到2個字母后必須有一個數字 (?=\\d{0,2}[az])
-當前位置右側的0到2位數字后必須有一個字母 [az\\d]{3}
-匹配三個字母或數字 (?!\\S)
-空格或字符串結尾應在當前位置的右邊。 因此,如果您需要數字/字母/數字和字母/數字/字母,則下面的方法應該有效。 但是您輸入的ao1不符合此條件。
\d[a-z]\d|[a-z]\d[a-z]
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.