我喜欢在Java中创建一个正则表达式(regex(,如果不是一个或多个零,或者不是3037
,它应该是真的。
我为这 2 个条件准备了 2 个不同的正则表达式
- 对于
0
条件:[^0]+
- 对于
3037
条件:^((?!^3037$).)*$
但不知道如何在它们之间放置OR
。
通行证案例:
001
002
30377
23037
2
4
55
失败条件:
0
00
000
0000
00000
3037
您可以将此组合正则表达式用于 2 个条件(并且不使用交替(:
^(?!(?:3037|0+)$)d*$
正则表达式演示
正则表达式详细信息:
-
^
:输入开始 -
(?!(?:3037|0+)$)
:断言输入的负展望不3037
,也不全为零 -
d*
:匹配任意数字 0 或更多次 -
$
: 输入结束