有时候需要用到正则表达式,简单的就直接写了(有时候也会忘),再复杂点就得花点时间测试,如果能把这些正则表达式收集在一个地方,随时可以查找,就会方便很多。欢迎更多朋友提供分享……
常用正则1:
名称 | 正则 | 备注(示例或说明) |
匹配x前面的位置 | (?=x) | |
匹配x后面的位置,不包括x | (?<=x) | |
匹配第一个: | ([^:]*):(.*) | |
匹配q: "后面所有内容中到第一个"中间的内容 | (?<=q: ")(.[^"]+) |
|
匹配以|分隔的内容 | (.*)\|(.*)\|(.*) | |
从右到左可匹配最后一个@到最后的内容 | @([^@]+) | abcdcadd@123dd@lkjkj |
字符串aababbacbadbaeb中匹配a.b,要获取最后一个aeb | a.b(?!.*a.b) | aababbacbadbaeb |
常用正则2:
名称 | 正则 | 备注(示例或说明) |
数字 | ^[0-9]*$ | |
汉字 | ^[\u4e00-\u9fa5]{0,`}`$ | |
英文和数字 | ^[A-Za-z0-9]+$ | |
由26个英文字母组成的字符串 | ^[A-Za-z]+$ | |
email地址 | ^\w+([-+.]\w+)\w+([-.]\w+)*\.\w+([-.]\w+)*$ | |
域名 | [a-zA-Z0-9][-a-zA-Z0-9]{0,62}(/.[a-zA-Z0-9][-a-zA-Z0-9]{0,62})+/.? | |
InternetURl网址 | [a-zA-z]+://[^\s]* 或 ^http://([\w-]+\.)+[\w-]+(/[\w-./?%&=]*)?$ | |
手机号码 | ^(13[0-9]|14[5|7]|15[0|1|2|3|5|6|7|8|9]|18[0|1|2|3|5|6|7|8|9])\d{8}$ | |
电话号码 | ^(\(\d{3,4}-)|\d{3.4}-)?\d{7,8}$ | |
身份证号 | ^\d{15}|\d{18}$ | |
帐号是否合法 | ^[a-zA-Z][a-zA-Z0-9_]{4,15}$ | (字母开头,允许5-16字节,允许字母数字下划线) |
密码 | ^[a-zA-Z]\w{5,17}$ | (以字母开头,长度在6~18之间,只能包含字母、数字和下划线) |
强密码 | ^(?=.*\d)(?=.*[a-z])(?=.*[A-Z]).{8,10}$ | (必须包含大小写字母和数字的组合,不能使用特殊字符,长度在8-10之间) |
日期格式 | ^(?=.*\d)(?=.*[a-z])(?=.*[A-Z]).{8,10}$\d{4}-\d{1,2}-\d{1,2} | |
XML文件 | ^([a-zA-Z]+-?)+[a-zA-Z0-9]+\\.[x|X][m|M][l|L]$ | |
qq号 | [1-9][0-9]{4,`}` | |
中国邮政编码 | [1-9]\d{5}(?!\d) | |
IP地址 | \d+\.\d+\.\d+\.\d+ |