我试图创建一个正则表达式来捕捉以下条件,但完全没有理解它(星期五)并需要一些帮助吗?
尝试捕获以区号或区号开头的英国电话号码,但不包括手机号码。
示例:01316691234或6691234,但不是以07开头的任何数字
到目前为止^[0-9]1?(\d{6,11})
得到了这个,但很难排除07号码。
答案 0 :(得分:1)
这是基于英国地区代码的假设:
虽然这对我来说听起来很合理,但我没有电信套装,所以如果这个假设的任何部分出错,你需要相应修改:
/^(0[12345689]\d{1,3} ?)?\d{6,7}$/
无论哪种方式,它都是一堆蠕虫。邮政编码和电话号码不适合REGEX;你越精确,你就越有可能从明天加入新规则 - 例如如果他们从03开始推出新的区号。
答案 1 :(得分:0)
使用负面预测来防止以" 07"开头的数字匹配:
^(?!07)([0-9]1)?(\d{6,11})