正则表达式
一、概述
    验证
    网络爬虫。

概念:
    具有语法格式的字符串。

函数
    PCRE
    1、perl语言正则语法兼容。(java c)
    2、速度快,效率高。
    POSIX
    1、效率不高
    2、安全隐患。
    3、windows无法运行。

二、正则表达式的应用
    preg_match_all(string $pattern,string $subject,array $match)
    功能:正则匹配
    参数:
    pattern 正则表达式
    subject 要进行匹配的字符串
    match   匹配到的结果
    返回:匹配到的次数。

语法:
    - 定界符
    - 原子
    - 元字符
    - 模式修正符

- 定界符
      一个正则表达式必须有定界符。除了数字,字母、下划线,其他都可以作为定界符。而行业中最常用的定积分是 "/",定界符是成对出现的。
    - 原子
      原子是正则表达式的最小组成单位。一个正则表达式要想有意义,则至少有一个原子。 
      a、数字、字母、下划线,所有的打印字符都叫原子。
      b、非打印字符。
         \n 换行
      c、需要进行转义的字符。具有特殊含义的字符。例如:元字符
      d、具有特殊含义的原子
         \d 代表所有的数字
         \D 代表了所有的非数字

\w 数字、字母、下划线
         \W 非数字、字母、下划线

\s 代表了所有的空白
         \S 代表了所有的非空白

e、自定义原子表
         [] 指定原子的范围,例如:a-z 代表了所有的小写英文字母
                                 A-Z 代表了所有的大写英文字母
                                 0-9  代表了所有的数字
                     
            可以同时给出多个范围,多个范围之间不需要间隔符号。
            例如:a-z0-9
            在自定义原子表中 ^代表 非
      f、. 任意原子

元字符
      元字符是用来修饰原子的。
      * 代表被修饰的原子可以出现0次或者多次。
      + 代表被修饰的原子可以出现1次或者多次。
      ?代表被修饰的原子可以出现0次或者1次。

{m} 代表被修饰的原子可以出现m次。
      {n,m}  代表被修饰的原子可以出现最少n最多m次。
                 n<=出现的次数<=m
      {n,}   代表被修饰的原子可以出现最少n最对不限制
                 n<=出现的次数

|   或

^和\A 代表以^和\A修饰的字符的作为开始
      $和\Z 代表以$和\Z修饰的字符的作为结束

()
       - 子模式 
       - 改变匹配的范围
       - 反向引用

\b和\B \b代表字符边界,\B 代表了非字符边界

- 模式修正符
           模式修正符是用来修正正则表达式的。模式修正符是写在正则表达式的定界符外面的。
      
           i :使正则表达式不区分大小写。

正则验证邮箱原理图片:

正则验证注册原理图片

 

【正则】day01的更多相关文章

  1. Javascript正则对象方法与字符串正则方法总结

    正则对象 var reg = new Regexp('abc','gi') var reg = /abc/ig 正则方法 test方法(测试某个字符串是否匹配) var str = 'abc123'; ...

  2. C#-正则,常用几种数据解析-端午快乐

    在等待几个小时就是端午节了,这里预祝各位节日快乐. 这里分享的是几个在C#中常用的正则解析数据写法,其实就是Regex类,至于正则的匹配格式,请仔细阅读正则的api文档,此处不具体说明,谢谢. 开始吧 ...

  3. Javascript 中 with 的替代方案和String 中的正则方法

    这几天在升级自己的MVVM 框架,遇到很多小问题,就在这里统一解决了. with 语法 在代码中,要执行这么一个函数 function computeExpression(exp, scope) { ...

  4. JavaScript与PHP中正则

    一.JavaScript 有个在线调试正则的工具,点击查看工具.下面的所有示例代码,都可以在codepen上查看到. 1.创建正则表达式 var re = /ab+c/; //方式一 正则表达式字面量 ...

  5. Java正则速成秘籍(一)之招式篇

    导读 正则表达式是什么?有什么用? 正则表达式(Regular Expression)是一种文本规则,可以用来校验.查找.替换与规则匹配的文本. 又爱又恨的正则 正则表达式是一个强大的文本匹配工具,但 ...

  6. Java正则速成秘籍(二)之心法篇

    导读 正则表达式是什么?有什么用? 正则表达式(Regular Expression)是一种文本规则,可以用来校验.查找.替换与规则匹配的文本. 又爱又恨的正则 正则表达式是一个强大的文本匹配工具,但 ...

  7. Java正则速成秘籍(三)之见招拆招篇

    导读 正则表达式是什么?有什么用? 正则表达式(Regular Expression)是一种文本规则,可以用来校验.查找.替换与规则匹配的文本. 又爱又恨的正则 正则表达式是一个强大的文本匹配工具,但 ...

  8. python浅谈正则的常用方法

    python浅谈正则的常用方法覆盖范围70%以上 上一次很多朋友写文字屏蔽说到要用正则表达,其实不是我不想用(我正则用得不是很多,看过我之前爬虫的都知道,我直接用BeautifulSoup的网页标签去 ...

  9. [Python基础知识]正则

    import re str4 = r"^http://qy.chinahr.com/cvm/preview\?cvid=\w{24,25}&from=sou&gtid=\w{ ...

随机推荐

  1. WPF 获取系统 DPI 的多种方法

    原文:WPF 获取系统 DPI 的多种方法 WPF 获取系统 DPI 的多种方法 由于 WPF 的尺寸单位和系统的 DPI 相关,我们有时需要获取 DPI 值来进行一些界面布局的调整,本文汇总了一些 ...

  2. 使用adb安装apk到手机

    [ADB]Android debug bridge.Android手机实际是基于Linux系统的.通过USB线将android手机与电脑连起来,在电脑上dos命令行中敲adb shell命令,可以登录 ...

  3. Python开发GUI实战:图片转换素描画工具!

    奋斗没有终点 好好学习72变,因为将来 没有人能替你阻挡81难 . 生如蝼蚁,当有鸿鹄之志: 命如纸薄,应有不屈之心 . ​ 今天被这句话触动了,所以开篇分享给大家.鸡汤有毒,但有时大家却靠它激励自己 ...

  4. DOS命令行操作MySQL常用命令

    平时用可视化界面用惯了,如果紧急排查问题,没有安装可视化工具的话,只能通过命令来看了. 以备不时之需,我们要熟悉一下命令行操作MySQL. 打开DOS命令窗口:WIN + R 输入cmd,回车 然后输 ...

  5. RabbitMQ的消息确认ACK机制

    1.什么是消息确认ACK. 答:如果在处理消息的过程中,消费者的服务器在处理消息的时候出现异常,那么可能这条正在处理的消息就没有完成消息消费,数据就会丢失.为了确保数据不会丢失,RabbitMQ支持消 ...

  6. C# - VS2019通过重写pictureBox实现简单的桌面截图功能

    前言 通过创建客制化组件(继承pictureBox),新增属性和构造方法,实现屏幕截图时需要用到的功能点.再通过监控鼠标按下.移动和释放,来获取起始点区域.最后通过操作BMP图像,实现截图的新增.修改 ...

  7. 解决pip使用异常No module named 'pip'

    场景 在使用pip进行升级时 python install --upgrade named pip 时提示: No module named pip 注: 博客: https://blog.csdn. ...

  8. CDN(Content Delivery Network)原理

    CDN即内容分发网络,一般包括分发服务系统,负载均衡系统和管理系统. 分发服务系统,其基本的工作单元就是各个cache服务器.负责直接响应用户请求,将内容快速分发到用户:同时还负责内容更新,保证和源站 ...

  9. SSM框架之Mybatis(3)dao层开发

    Mybatis(3)dao层开发 以实现类完成CRUD操作 1.持久层dao层接口的书写 src\main\java\dao\IUserDao.java package dao; import dom ...

  10. node设置跨域白名单

    // 判断origin是否在域名白名单列表中 function isOriginAllowed(origin, allowedOrigin) { if (_.isArray(allowedOrigin ...