ElemenUi的用法:
Js用法,也是2个/夹住,返回True或False
console.log(RegExp(/^([1-9][0-9]*)$/).test('你好123123'))COPY
狐表用法,返回True或False
Dim rgx As New RegularExpressions.Regex("^-?[0-9]\d*$") Output.show(rgx.IsMatch("你好123123"))
整数:^-?[0-9]\d*$ 正整数:^([1-9][0-9]*)$ 正整数+0:^([0-9][0-9]*)$ 负整数:^(-[1-9][0-9]*)$ 负整数+0:^0${1,1}|^(-[1-9][0-9]*)$ 正整数+负整数,不含0:^(-)?[1-9][0-9]*$ 正数:^(([1-9]+[0-9]*.{1}[0-9]+)|bai([0].{1}[1-9]+[0-9]*)|([1-9][0-9]*)|([0][.][0-9]+[1-9]*))$ 正数 +0 :(0|^(([1-9]+[0-9]*.{1}[0-9]+)|bai([0].{1}[1-9]+[0-9]*)|([1-9][0-9]*)|([0][.][0-9]+[1-9]*))$) 负数:^-(([1-9]+[0-9]*.{1}[0-9]+)|([0].{1}[1-9]+[0-9]*)|([1-9][0-9]*)|([0][.][0-9]+[1-9]*))$ 负数+0 :^0${1,1}|^-(([1-9]+[0-9]*.{1}[0-9]+)|([0].{1}[1-9]+[0-9]*)|([1-9][0-9]*)|([0][.][0-9]+[1-9]*))$ 正数+负数,不含0:^(-)?(([1-9]+[0-9]*.{1}[0-9]+)|([0].{1}[1-9]+[0-9]*)|([1-9][0-9]*)|([0][.][0-9]+[1-9]*))$ 正数+负数+0:^0${1,1}|^(-)?(([1-9]+[0-9]*.{1}[0-9]+)|([0].{1}[1-9]+[0-9]*)|([1-9][0-9]*)|([0][.][0-9]+[1-9]*))$ 金额格式,即是 正数+0,且最多2位小数:(^(([1-9]([0-9]+)?)|(0{1}))(\.[0-9]{1,2})?$) (结尾的{1,2}就是说允许支持1~2位小数,可以自行修改)
至少1个中文:[\u4e00-\u9fa5] 只有英文和数字:^[A-Za-z0-9]+$ 或 ^[A-Za-z0-9]{4,40}$ 除换行符外的,长度为3-20的所有字符:^.{3,20}$ 由26个英文字母组成的字符串:^[A-Za-z]+$ 由26个大写英文字母组成的字符串:^[A-Z]+$ 由26个小写英文字母组成的字符串:^[a-z]+$ 由数字和26个英文字母组成的字符串:^[A-Za-z0-9]+$ 由数字、26个英文字母或者下划线组成的字符串: ^\w+$ 中文、英文、数字包括下划线:^[\u4E00-\u9FA5A-Za-z0-9_]+$ 中文、英文、数字但不包括下划线等符号:^[\u4E00-\u9FA5A-Za-z0-9]+$ 以字母开头的6~18字符,可填字母、数字和下划线: ^[a-zA-Z][a-zA-Z0-9_]{5,17}$
Email地址 1)只允许英文字母、数字、下划线、英文句号、以及中划线组成:^\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*$ 2)名称允许汉字、字母、数字,域名只允许英文域名:^[A-Za-z0-9\u4e00-\u9fa5]+@[a-zA-Z0-9_-]+(\.[a-zA-Z0-9_-]+)+$ 域名:[a-zA-Z0-9][-a-zA-Z0-9]{0,62}(/.[a-zA-Z0-9][-a-zA-Z0-9]{0,62})+/.? url连接:[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}$ 电话号码("XXX-XXXXXXX"、"XXXX-XXXXXXXX"、"XXX-XXXXXXX"、"XXX-XXXXXXXX"、"XXXXXXX"和"XXXXXXXX):^(\(\d{3,4}-)|\d{3.4}-)?\d{7,8}$ 国内电话号码(0511-4405222、021-87888822):\d{3}-\d{8}|\d{4}-\d{7} 第二代身份证号(18位数字):^[1-9]\d{5}(18|19|([23]\d))\d{2}((0[1-9])|(10|11|12))(([0-2][1-9])|10|20|30|31)\d{3}[0-9Xx]$ 注意这个正则只是检查基础位数,并没有完全按照身份证规则校检,建议数据传到后端使用狐表自带的ValidPIN(身份证)百分百准确 短身份证号码(数字、字母x结尾):^([0-9]){7,18}(x|X)?$ 或 ^\d{8,18}|[0-9x]{8,18}|[0-9X]{8,18}?$ 帐号是否合法(字母开头,允许5-16字节,允许字母数字下划线):^[a-zA-Z][a-zA-Z0-9_]{4,15}$ 密码(以字母开头,长度在6~18之间,只能包含字母、数字和下划线):^[a-zA-Z]\w{5,17}$ 强密码(必须包含大小写字母和数字的组合,不能使用特殊字符,长度在8-10之间):^(?=.*\d)(?=.*[a-z])(?=.*[A-Z]).{8,10}$ 日期格式:^\d{4}-\d{1,2}-\d{1,2} 一年的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)$ xml文件:^([a-zA-Z]+-?)+[a-zA-Z0-9]+\\.[x|X][m|M][l|L]$ 双字节字符(包括汉字在内,可以用来计算字符串的长度(一个双字节字符长度计2,ASCII字符计1)):[^\x00-\xff] 空白行的正则表达式(可以用来删除空白行):\n\s*\r HTML标记的正则表达式:<(\S*?)[^>]*>.*?</\1>|<.*? /> (网上流传的版本太糟糕,上面这个也仅仅能部分,对于复杂的嵌套标记依旧无能为力) 首尾空白字符的正则表达式:^\s*|\s*$ 或 (^\s*)|(\s*$) (可以用来删除行首行尾的空白字符(包括空格、制表符、换页符等等),非常有用的表达式) 腾讯QQ号(腾讯QQ号从10000开始):[1-9][0-9]{4,} 中国邮政编码(中国邮政编码为6位数字):[1-9]\d{5}(?!\d) IP地址:((?:(?:25[0-5]|2[0-4]\\d|[01]?\\d?\\d)\\.){3}(?:25[0-5]|2[0-4]\\d|[01]?\\d?\\d))
狐表用法,得到过滤后的结果
Dim rgx As New RegularExpressions.Regex("[0-9]") Output.show(rgx.Replace("你好123123",""))
去掉所有大写英文:[A-Z] 去掉所有小写英文:[a-z] 去掉所有数字 : [0-9] 去掉所有中文:[\u4e00-\u9fa5] 去掉所有空格+换行符:\s 去掉所有标点符号+换行 : [^a-zA-Z0-9\u4e00-\u9fa5]
以上表达式可以用|组合起来用,例如
去掉所有小写英文+数字 : [a-z]|[0-9]
正则世界里,中括号内的^表示取反
例如我们想去掉所有标点符号,但是这实在太多了,一个个标点符号敲出来太麻烦,那我们可以反过来想
标点表符号:就是除大小写英文、数字、中文以外的东西,于是就有这个 [^a-zA-Z0-9\u4e00-\u9fa5]