因为在实战开发中,经常会用到正则,故此有了这篇文章,做一个收集,免得以后要用的时候,总是要搜。
目录
- 中⽂整句匹配:`[\u4E00-\u9FA5]+`
- 中⽂字符单字匹配:`[\u4e00-\u9fa5]`
- ⼿机号码匹配:`(86)?0?1\d{10}`
- 匹配Email地址:`[\w-]+[\w-.]?@[\w-]+(\.[A-Za-z]{2,5})+`
- 密码校验(安全级别中,大小写字母及数字):`(\d+[A-Za-z]\w*|[A-Za-z]+\d\w*)`
- 密码校验(安全级别⾼,大小写字母及数字与特殊字符):`(\d+[a-zA-Z~!@.#$%^&(){}][\w~!@.#$%^&(){}]*|[a-zA-Z~!@.#$%^&(){}]+\d[\w~!@.#$%^&(){}]*)`
- 匹配整数单个数字:`-?[1-9]d*`
- 匹配整数:`-?[0-9]*`
- 匹配浮点数:`(-?\d+)(\.\d+)?`
- 匹配由26个英⽂大小写字⺟组成的字符串:`[A-Za-z]+`
- 匹配由数字和26个大小写英⽂字⺟组成的字符串:`[A-Za-z0-9]+`
- 匹配以零和⾮零开头的数字:`(0|[1-9][0-9]*)`
- 匹配身份证号(15位、18位数字),最后一位是校验位,可能为数字或字符X:`(^\d{15}$)|(^\d{18}$)|(^\d{17}(\d|X|x)$)`
- 一年的12个月(01~09和1~12):`^(0?[1-9]|1[0-2])$`
- 一个月的31天(01~09和1~31):`^((0?[1-9])|((1|2)[0-9])|30|31)$`
- 匹配HTML标记的正则表达式:`<(\S*?)[^>]*>.*?|<.*? />`
- 匹配URL⽹址:`https://([\w-]+\.)+[\w-]+(/[\w-./?%&=]*)?`
- 巨人的肩膀
- VChat
元字符优先级顺序(从⾼到低,从左到右)
\
转义字符()
圆括号,[]
⽅括号* + ? {n} {n,} {n,m}
限定符^ $
开始和结束标识|
"或"操作
中⽂整句匹配:[\u4E00-\u9FA5]+
中⽂字符单字匹配:[\u4e00-\u9fa5]
⼿机号码匹配:(86)?0?1\d{10}
匹配Email地址:[\w-]+[\w-.]?@[\w-]+(\.[A-Za-z]{2,5})+
\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*
密码校验(安全级别中,大小写字母及数字):(\d+[A-Za-z]\w*|[A-Za-z]+\d\w*)
密码校验(安全级别⾼,大小写字母及数字与特殊字符):(\d+[a-zA-Z~!@.#$%^&(){}][\w~!@.#$%^&(){}]*|[a-zA-Z~!@.#$%^&(){}]+\d[\w~!@.#$%^&(){}]*)
匹配整数单个数字:-?[1-9]d*
匹配整数:-?[0-9]*
匹配浮点数:(-?\d+)(\.\d+)?
匹配由26个英⽂大小写字⺟组成的字符串:[A-Za-z]+
匹配由数字和26个大小写英⽂字⺟组成的字符串:[A-Za-z0-9]+
匹配以零和⾮零开头的数字:(0|[1-9][0-9]*)
匹配身份证号(15位、18位数字),最后一位是校验位,可能为数字或字符X:(^\d{15}$)|(^\d{18}$)|(^\d{17}(\d|X|x)$)
一年的12个月(01~09和1~12):^(0?[1-9]|1[0-2])$
一个月的31天(01~09和1~31):^((0?[1-9])|((1|2)[0-9])|30|31)$
匹配HTML标记的正则表达式:<(\S*?)[^>]*>.*?|<.*? />
匹配URL⽹址:https://([\w-]+\.)+[\w-]+(/[\w-./?%&=]*)?
巨人的肩膀
从他人的工作中汲取经验来避免自己的错误重复,正如我们是站在巨人的肩膀上才能做出更好的成绩。
https://c.runoob.com/front-end/854
VChat
一个没有哆啦A梦和静香的IT码农,不专业Gopher