“2[0-4]\d|25[0-5]|[01]?\d\d?”这个正则表达式是什么意思
问题描述:
“2[0-4]\d|25[0-5]|[01]?\d\d?”这个正则表达式是什么意思
我知道这是说不能大于255的数字,可是我想要具体的解释
"|]+>(.*)]+>|U"
答
首先,|表示或的意思,对于2[0-4]\d|25[0-5]|[01]?\d\d?也就是2[0-4]\d或者25[0-5]或者[01]?\d\d?.2[0-4]\d表示2后面跟着0-4之间的一个数字,然后再跟着任意一个数字.也就是200-24925[0-5]表示25后面跟着0-5之间的一个数字,也就是250-255[01]?\d\d?表示前面开头是0或1,或者没有,后面跟着任意一个数字,然后跟着任意一个数字,也可以没有.相当于[01]\d\d|\d\d|[01]\d|\d.|]+>(.*)]+>|U,|在这里是分隔符的作用,不是正则的一部分.修饰符U表示贪婪和非贪婪的反转符,也就是加了以后默认是非贪婪了.对于]+>(.*)]+>,[^>]+表示除了>以外的字符匹配一个以上,(.*)表示任意字符匹配0个以上,而且作为一个分组保存下来.