我想写一个匹配的正则表达式:
[\d]{6,}
(= 6个连续数字),但不匹配:
0[\d]{9}
(从0开始的10个连续数字)
显然我可以用2 C#条件轻松完成 . if(Regex1.Match(pattern)&&!Regex2.Match(pattern))但是在我的代码的特定情况下,我需要用一次检查来评估它们 .
我想知道是否有办法用一个正则表达式检查2个条件?
我需要的具体例子:
blabla
12345678 should be found
0123456789 should not be found
0123456 should be found
40666666666 should be found
bla
Thx提前 .
编辑:编辑了预期的匹配
1 回答
你必须以一种方式编写正则表达式,所有条件都在一个正则表达式中 .
例如,您可以使用boundaries(\ b)来表示您的字符串在您的数字后面有其他内容(字母,符号或空格)以及您的数字前面的其他内容,以及alternation(管道)的功能,以提供一些特殊说明"starting with 0":
示例:https://regex101.com/r/YIJh9g/4
但是,正如有人指出的那样:请带上一个真实世界的例子 .