正则表达式(Regular Expression,在代码中常简写为regex、regexp或RE)是由普通字符(大小写的字母和数字)以及特殊字符(称为元字符)组成的描述特定规则的字符串。常用于在文本中匹配字符串。
Get正则三两条,少写代码翻一番!
-
校验密码强度 必须是<大小写字母+数字>,不能使用特殊字符,长度在6到16位之间
^(?=.*\\d)(?=.*[a-z])(?=.*[A-Z]).{6,16}$ -
校验中文 字符串只能是中文
^[\\u4e00-\\u9fa5]{0,}$ -
由<数字+26个英文字母+下划线>组成的字符串
^\\w+$ -
校验E-Mail 地址
[\\w!#$%&'*+/=?^_`{|}~-]+(?:\\.[\\w!#$%&'*+/=?^_`{|}~-]+)*@(?:[\\w](?:[\\w-]*[\\w])?\\.)+[\\w](?:[\\w-]*[\\w])? -
校验身份证号码
- 18位:
^[1-9]\\d{5}[1-9]\\d{3}((0\\d)|(1[0-2]))(([0|1|2]\\d)|3[0-1])\\d{3}([0-9]|X)$- 15位:
^[1-9]\\d{7}((0\\d)|(1[0-2]))(([0|1|2]\\d)|3[0-1])\\d{3}$- (15位、18位数字):
^\d{15}|\d{18}$ -
校验日期 “yyyy-mm-dd“ 平闰年都可用
^(?:(?!0000)[0-9]{4}-(?:(?:0[1-9]|1[0-2])-(?:0[1-9]|1[0-9]|2[0-8])|(?:0[13-9]|1[0-2])-(?:29|30)|(?:0[13578]|1[02])-31)|(?:[0-9]{2}(?:0[48]|[2468][048]|[13579][26])|(?:0[48]|[2468][048]|[13579][26])00)-02-29)$ -
校验小数 小数点3位
^[0-9]+(.[0-9]{3})?$ -
校验手机号 国内 13、14、15、18开头
^(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}$
-
URL链接提取
^(f|ht){1}(tp|tps):\\/\\/([\\w-]+\\.)+[\\w-]+(\\/[\\w- ./?%&=]*)? -
提取Color Hex Codes
^#([A-Fa-f0-9]{6}|[A-Fa-f0-9]{3})$ -
提取网页图片
\\< *[img][^\\\\>]*[src] *= *[\\"\\']{0,1}([^\\"\\'\\ >]*) -
提取页面超链接
(<a\\s*(?!.*\\brel=)[^>]*)(href="https?:\\/\\/)((?!(?:(?:www\\.)?'.implode('|(?:www\\.)?', $follow_list).'))[^"]+)"((?!.*\\brel=)[^>]*)(?:[^>]*)> -
查找CSS属性
^\\s*[a-zA-Z\\-]+\\s*[:]{1}\\s[a-zA-Z0-9\\s.#]+[;]{1} -
抽取注释
<!--(.*?)--> -
匹配HTML标签
<\\/?\\w+((\\s+\\w+(\\s*=\\s*(?:".*?"|'.*?'|[\\^'">\\s]+))?)+\\s*|\\s*)\\/?> -
汉字
^[\u4e00-\u9fa5]{0,}$ -
中文字符的正则表达式
[\u4e00-\u9fa5] -
空白行的正则表达式 (可以用来删除空白行)
\n\s*\r -
腾讯QQ号 10000开始
[1-9][0-9]{4,} -
中国邮政编码
[1-9]\d{5}(?!\d) (中国邮政编码为6位数字) 33 IP地址:\d+\.\d+\.\d+\.\d+ (提取IP地址时有用) 34 IP地址:((?:(?:25[0-5]|2[0-4]\\d|[01]?\\d?\\d)\\.){3}(?:25[0-5]|2[0-4]\\d|[01]?\\d?\\d)) -
禁止输入含有~的字符
[^~\x22]+ -
Email地址
^\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*$
最后推荐一个网站https://regexr.com/,这个网站可以称得上是非常强大的了,若是正则新手拿来学习练习正则也是非常不错的。
- 悬浮气泡解释本条规则所能匹配的字符串
- 匹配结果对应的解释
- 右侧边栏是正则的规范
image.png










网友评论