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

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

函数
    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. 一些你不知道的css特性【一】

    浏览器禁止用户在标签的style中使用js写入"!important"的特性 我们在使用jQuery设置css的时候 $('#text').css('height', '200px ...

  2. H5生成二维码

    要用H5生成二维码: 1.引入js库,可自行点击链接复制使用 <script type="text/javascript" src="http://static.r ...

  3. PHP fastcgi_finish_request 方法

    本文介绍,PHP运行在FastCGI模式时,FPM提供的方法:fastcgi_finish_request. 在说这个方法之前,我们先了解PHP有哪些常用的运行模式? PHP运行模式 CGI 通用网关 ...

  4. 鸟哥的Linux私房菜笔记第五章,文件权限与目录配置(二)

    Linux目录配置的依据--FHS 因为利用Linux来开发产品的公司太多,例如,CentOS.Ubuntu.ReHat...,导致了配置文件存放的目录没有统一的标准.后来就有了FHS(Filesys ...

  5. Java 类加载机制(阿里)-何时初始化类

    (1)阿里的面试官问了两个问题,可以不可以自己写个String类 答案:不可以,因为 根据类加载的双亲委派机制,会去加载父类,父类发现冲突了String就不再加载了; (2)能否在加载类的时候,对类的 ...

  6. kfifo

    kfifo 的一些伪代码 kfifo_len() out = LOAD fifo->out smp_rmb() len = LOAD fifo->in - out kfifo_in() k ...

  7. oracle学习笔记(十九) 子程序——存储过程

    子程序--存储过程 我们可以使用子程序来封装一下我们需要的操作,子程序又有存储过程,函数和触发器. 这里先学习存储过程~ 语法 create [or replace] procedure $proce ...

  8. 死磕 java同步系列之CountDownLatch源码解析

  9. 2018-8-10-win10-uwp-依赖属性

    原文:2018-8-10-win10-uwp-依赖属性 title author date CreateTime categories win10 uwp 依赖属性 lindexi 2018-08-1 ...

  10. python基础(32):进程(二)

    1. multiprocess模块 仔细说来,multiprocess不是一个模块而是python中一个操作.管理进程的包. 之所以叫multi是取自multiple的多功能的意思,在这个包中几乎包含 ...