web企业报表FineReport中正则表达式定义规则

2025-11-13 09:47:03

1、一些表达式的作用:

{n}:表示重复n次,比如"\w{2}"相当于"\w\w";"a{5}"相当于 "aaaaa"

{m,n}:表示至少重复m次,最多重复n次,比如"ba{1,3}"可以匹配 "ba"或"baa"或"baaa"

{m,}:表示至少重复m次,比如"\w\d{2,}"可以匹配 "a12","_456","M12344"

?:匹配表达式0次或者1次,相当于 {0,1},比如"a[cd]?"可以匹配 "a","ac","ad"

+:表达式至少出现1次,相当于 {1,},比如"a+b"可以匹配 "ab","aab","aaab"

*:表达式不出现或出现任意次,相当于 {0,},比如"\^*b"可以匹配 "b","^^^b"。

2、一些常用小例子举例:

(1) 检查手机号是否合法:^1(3\d|5[36789])\d{8}$

说明:手机号共11位,第一位为1,第二位为3或者5,当第二位为5的时候,第三位只能是36789中的一个

(2) 检查中文名是否合法:^[\u4e00-\u9fa5]+$

说明:若不是中文或中文的前后有空格,都认为是不合法的

(3) 检查html标记是否匹配:<(.*)>.*<\/\1>|<(.*) \/>

说明:如若只出现<html>而无对应的</html>,则检验结果是html标记不匹配

(4) 检查URL格式是否合法:[a-zA-z]+://[^\s]*

说明:URL合法格式应该以字母连接://开头

(5) 检查IP格式是否合法:(\d+)\.(\d+)\.(\d+)\.(\d+)

说明:IP的格式是点分十进制格式,例如:192.168.100.11就是正确的IP

(6) 检查账号是否合法:^[a-zA-Z][a-zA-Z0-9_]{4,15}$

说明:账号字母开头,其他位可以有大小写字母、数字、下划线,允许5-16字节

(7) 检查QQ号是否合法:^\s*[.0-9]{5,10}\s*$

说明:QQ号码必须是数字,最长10位

(8) 检查邮政编码是否合法:^[1-9]\d{5}$

说明:邮编首位不为0,长度是6位的数字

(9) 检查身份证号是否合法:(^\d{15}$)|(^\d{17}([0-9]|X)$)

说明:身份证号码为15位或者18位,15位时全为数字,18位前17位为数字,最后一位是校验位,可能为数字或字符X

如果是在js中使用正则表达式,则需要在正则表达式前后加“/”,如建厂手机号码是否合法:/^1(3\d|5[36789])\d{8}$/

声明:本网站引用、摘录或转载内容仅供网站访问者交流或参考,不代表本站立场,如存在版权或非法内容,请联系站长删除,联系邮箱:site.kefu@qq.com。
猜你喜欢