簡體   English   中英

用正則表達式匹配交替字母數字字符

[英]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/numberletter/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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM