正则表达式定义规则

编辑
  • 文档创建者:文档助手1
  • 浏览次数:11905次
  • 编辑次数:14次
  • 最近更新:Kevin-s 于 2019-06-01
  • 1. 说明

    有时候我们需要用到正则表达式,例如文本控件填写规则里用到正则表达式,如下图:

    222


    正则表达式的书写规则如下:

    例如输入验证用户密码的正则表达式:“^[a-zA-Z]\w{5,17}$”表示密码规则是以字母开头,长度在 6-18 之间,只能包含字母、数字和下划线。

    • l \d 任意一个数字,0~9 中的任意一个

    • l \w 任意一个字母或数字或下划线,也就是 A-Z,a-z,0-9 中任意一个

    • l \s 包括空格、制表符、换页符等空白字符的其中任意一个

    • l . 小数点可以匹配除了换行符(\n)以外的任意一个字符

    • l ^ 开始

    • l $ 结束

    一些表达式的作用:

    • {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"。

    一些常用小例子举例:

    (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]{4,9}\s*$

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

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

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

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

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

     (10)  检查时间是否合规:^(0\d{1}|1\d{1}|2[0-3]):([0-5]\d{1})$

    说明:时间是 24 小时制,:号前是 01 到 23

     (11)  检查密码是否合规:^(?=.*\d)(?=.*[a-z])(?=.*[A-Z]).{8,10}$

    说明:密码必须包含大小写字母和数字的组合,不能使用特殊字符,长度在 8-10之间

     (12)  检查邮箱是否合规:因为邮箱格式类型比较多,比较常用的是^[a-zA-Z0-9_-]+@[a-zA-Z0-9_-]+(\.[a-zA-Z0-9_-]+)+$

    说明:只允许英文字母、数字、下划线、英文句号、以及中划线组成
    如果名称中有汉字、字母、数字,域名只允许英文域名,正则表达式为^[A-Za-z0-9\u4e00-\u9fa5]+@[a-zA-Z0-9_-]+(\.[a-zA-Z0-9_-]+)+$

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

    附件列表


    主题: 填报应用
    标签: 暂无标签 编辑/添加标签
    如果您认为本文档还有待完善,请编辑

    文档内容仅供参考,如果你需要获取更多帮助,付费/准付费客户请咨询帆软技术支持
    关于技术问题,您还可以前往帆软社区,点击顶部搜索框旁边的提问按钮
    若您还有其他非技术类问题,可以联系帆软传说哥(qq:1745114201

    此页面有帮助吗?只是浏览 [ 去社区提问 ]