正则表达式基础整理

  常用的正则表达式其实很简单,而且应用范围很广,这里做最常用的正则表达式的语法整理。
  特殊符号使用类:
  ^  $(开头和结尾)  完成的检测一个字符串是否符合要求,一般用来校验输入字符串的正确性
  cba(abc|bca)[abc] 一般用来匹配对应的字符串()表示整个字符串[]表示匹配到里面的某个 会增加一个|是选择符号
  * +  ? 分别表示不限次数 一次以上,0次或者1次式子
  {n,m} 限定个数
  另外俩个常见的特殊匹配\s(匹配空白字符).(匹配除换行符外的任何字符)

贪婪匹配与贪婪匹配
  <a>   </a>
  匹配的时候<a*?> 这样就会尽可能的减少匹配到的字符串


  大部分的正则表达式,上述几个已经够用。
   1.匹配常见的手机号码(常见是指13 15 17 18开头的手机号)(这是非常常见的一个匹配,输入手机号码的时候需要进行匹配)
   ^1[3578]\d{9}$
   ^表示以1开始
   [3578]表示里面随便读取一个
   \d匹配任意一个数字字符等价于[0-9]
   $匹配的结尾 配上了这个字符,就是对给出的字符串进行严格检测,
   PS:当没有开始符和结束符的时候,会得到多个匹配结果,如果是用preg_match_all()函数进行匹配,会把多个结果存到一个数组里面。所以正则表达式的俩个用途显现出来了:一个是对给出的字符串进行检测其是不是符合要求(preg_match($pattern,$subject)),另一个作用是读取给定的文本,把里面对应的东西搜索出来(preg_match_all($pattern,$subject,$arr))
   2.检测一个邮箱(常见类型的邮箱)  
    [\w-]+(\.[\w-]+)*@[\w-]+(\.[\w-]+)+
  \w  匹配包括下划线的任何单词字符。等价于'[A-Za-z0-9_]'
[\w-]+表示最前面最少出现一次或者多次\w-里面包含的字符
()匹配某个类型,里面作为一个整体进行匹配
*  表示前面的匹配式子匹配0次或者多次(这个符号很容易和+搞混淆,它是可以匹配0次的)
\. 匹配的是小数点  特殊字符匹配的时候都需要转义符
(\.[\w-]+)* 匹配前面的小数点和字符串
[\w-]+(\.[\w-]+)+ 这段和前面差不多,最少匹配到一个.的字符串
 应用场景:用户注册的时候判断其是不是合法的邮箱,采集使用,采集用户的邮箱,进行对应的储存

你可能感兴趣的:(正则表达式基础整理)