首页 > 其他 > 详细

正则表达式知识点和习题

时间:2020-09-29 13:07:13      阅读:45      评论:0      收藏:0      [点我收藏+]

正则知识点:

 

1. 只要验证字符串格式或查找、屏蔽敏感词时都要用正则  

 

    (1). 最简单的正则: 一个敏感词的原文

 

    (2). 一位字符上可能有多种备选字时用: [备选字列表]

 

    (3). 如果[]中部分字符是连续的,可用: [x-x]

 

         a. 一位小写字母: [a-z]

 

         b. 一位大写字母: [A-Z]

 

         c. 一位字母(大小写都行): [A-Za-z]

 

         d. 一位字母或数字都行: [0-9A-Za-z]

 

         e. 一位汉字: [\u4e00-\u9fa5]

 

    (4). 预定义字符集:

 

         a.  \d 一位数字

 

        b.  \w 一位数字字母或_

 

        c.  \s  空格、tab、换行等空字符

 

        d.  .   任意字符

 

    (5). 如果规定一个字符集或子规则反复出现的次数时就用量词:

 

         a. 有明确数量边界的量词:

 

            1). {n}  =n 必须n不能多也不能少

 

           2). {n,m}  n<=    <=m

 

          3). {n,}    n<=   多了不限

 

        b. 没有明确数量边界的量词:

 

          1). *   0<= 可有可无多了不限

 

         2). ?   0个或1个  可有可无,最多一个

 

         3). +   1<=  至少一个,多个不限

 

   (6). 两个规则中选其一匹配即可: 规则1|规则2

 

   (7).希望将多个子规则分为一组先联合匹配再和分组外的其他规则联合匹配:

 

         (多个子规则)

 

    (8). 匹配特殊位置: 3

 

        a. 字符串的开头位置: ^

 

        b. 字符串的结尾位置: $

 

       c. 英文句子中的单词的左右边界: \b

 

正则习题:

  1. 给一个连字符串例如:get-element-by-id转化成驼峰形式。
  2. 匹配二进制数字
  3. 非零的十进制数字 (有至少一位数字但是不能以0开头)
  4. 匹配一年中的12个月
  5. 匹配qq号最长为13
  6. 匹配常见的固定电话号码
  7. 匹配ip地址
  8. 匹配用尖括号括起来的以a开头的字符串
  9. 分割数字每三个以一个逗号划分
  10. 判断字符串是否包含数字
  11. 判断电话号码
  12. 判断是否符合指定格式
  13. 判断是否符合USD格式
  14. JS实现千位分隔符
  15. 获取 url 参数
  16. 验证邮箱
  17. 验证身份证号码
  18. 匹配汉字
  19. 去除首尾的‘/‘
  20. 判断日期格式是否符合 ‘2017-05-11‘的形式,简单判断,只判断格式
  21. 判断日期格式是否符合 ‘2017-05-11‘的形式,严格判断(比较复杂)
  22. IPv4地址正则
  23. 十六进制颜色正则
  24. 车牌号正则
  25. 过滤HTML标签
  26. 密码强度正则,最少6位,包括至少1个大写字母,1个小写字母,1个数字,1个特殊字符
  27. URL正则
  28. 匹配浮点数

正则表达式知识点和习题

原文:https://www.cnblogs.com/zxtjuan/p/13748755.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!