我正在寻找一个可以验证数字的正则表达式。 一部分很容易^(\ d {5,9})$表示数字的字符串必须是5到9位。
第2部分我不知道如何:它不能以9999
开头如何添加该部分?
答案 0 :(得分:2)
答案 1 :(得分:1)
你想要一个负向前瞻断言,锚定在字符串的开头:
Regex rx = new Regex( @"^(?!9999)\d{5,9}$" ) ;
答案 2 :(得分:0)
我建议您使用编程语言的普通字符串函数来提取字符串的前四个字符,并将它们与" 9999"进行比较。这比负向前瞻断言更有效,也更容易阅读。
我认为可能存在一些需要符合正则表达式格式的特殊情况。如果是这种情况,那么其他答案就会满足您的需求。但我认为很难意识到并非涉及模式匹配的所有内容都必须使用正则表达式。