\(?0\d{2}[) -]?\d{8}正则表达式的解释

正则表达式30分钟出现了这样一个正则表达式:(?0\d{2}[) -]?\d{8}

“(”和“)”也是元字符,所以需要转义。

?匹配零或一次

(? 表示 出现(或者不出现(

0\d{2} 表示 以0开头的三位数字

[) - ] 表示 ) or - 出现零或者一次

这个表达式可以匹配几种格式的电话号码,
像(010)88886666,或022-22334455,或02912345678等。

不过以下格式也符合条件:
010)12345678或(022-87654321
再细分规则,用 | 把分支规则联系起来。 0\d{2}-\d{8}|0\d{3}-\d{7} | (0\d{2})[- ]?\d{8}|0\d{2}[- ]?\d{8}
正确的IP地址:
每一位都不能超过255,前三个数字加点号是一组,后一个仅为数字。
数字大小不能超过255,如果百位为2,个位十位数字不能超过5,如果百位是0或1,则个位无所谓。


字符类来描述一个:((2[0-4]\d|25[0-5]|[01]?\d\d?).){3}(2[0-4]\d|25[0-5]|[01]?\d\d?)
解释:2[0-4]\d指200~249之间的数字,“|”符号是正则里面的或,25[0-5]指250~255,[01]?表示一位或二位数字,

猜你喜欢

转载自blog.csdn.net/geek_sun/article/details/80330937