我正在尝试使用管道(|
)将以下四种模式合并为单一模式,但未获得所需的结果。
情景:
模式:
([\d]{4}[a-zA-Z]{0,3})
[a-zA-Z]{0,1}[\d]{4}[a-zA-Z]{0,2}
[a-zA-Z]{0,2}[\d]{4}[a-zA-Z]{0,1}
[a-zA-Z]{0,3}[\d]{4})
答案 0 :(得分:0)
您可以使用
^(?=[a-zA-Z\d]{4,7}$)[a-zA-Z]*\d{4}[a-zA-Z]*$
请参阅regex demo
如果您在默认情况下锚定模式的方法中使用正则表达式模式,^
和/或$
可能是多余的,但仍然有效。
正则表达式分解:
^
- 字符串开头(?=[a-zA-Z\d]{4,7}$)
- 要求字符串仅包含4到7个字母或数字的正向前瞻[a-zA-Z]*\d{4}[a-zA-Z]* - the string should contain 4 digits (
\ d {4}`)可以在零个或多个字母之前或之后$
- 字符串结束。