正则表明式,PHP正则表达式

一、
概述

一、
概述

<ol>
<li>[]范围范围
[abcd]
[a-zA-Z]
[a-zA-Z0-9]
</li>
<li>()限定组,用 ‘|’ 进行操作
hello(2009|word|12)
</li>
<li>{}用来限制字符出现次数
(hello(2009|word|12)){2}
</li>
</ol>

哪些是正则表达式?

1.
正则表达式的测试地方: http://tool.chinaz.com/regex/

1.
正则表明式的测试地方: http://tool.chinaz.com/regex/

常用元字符

代码 说明
.        匹配除换行符以外的私自字符
\w     匹配字母或数字或下划线
\s      匹配任意的空白符
\d      匹配数字
\b      匹配单词的发端或收尾
^       匹配字符串的初步
$       匹配字符串的终结

  正则表明式,又称正则表示法、常规表示法(Regular
Expression),正则表达式使用单个字符串来讲述、匹配一名目繁多符合某些语法规则的字符串。在许多文件编辑器里,正则表明式常用于检索、替换那多少个符合某个格局的公文。

 

 

常用限定符

代码/语法 说明
*              重复零次或更频繁

  •             重复1次或更频仍
    ?             重复零次或一次
    {n}           重复n次
    {n,}          重复n次或更频仍
    {n,m}       重复n到m次

正则表明式,PHP正则表达式。  C#方正则发挥式类是Regex类,位于System.Text.RegularExpressions命名空间下。

二 、具体的常用正则表明式

贰 、具体的常用正则表达式

常用反义词

代码/语法 说明
\W            匹配任意不是字母,数字,下划线,汉字的字符
\S             匹配任意不是空白符的字符
\D             匹配任意非数字的字符
\B             匹配不是单词开头或收尾的职位
[^x]           匹配除了x以外的人身自由字符
[^aeiou]    匹配除了aeiou那多少个假名以外的任意字符

符号

1.
信箱正则表明式:

  1)\w[-\w.+]*@([A-Za-z0-9][-A-Za-z0-9]+\.)+[A-Za-z]{2,14}
  2)\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*
  3)解析:

1.
邮箱正则表达式:

  1)\w[-\w.+]*@([A-Za-z0-9][-A-Za-z0-9]+\.)+[A-Za-z]{2,14}
  2)\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*
  3)解析:

举个栗子

email:\w[-\w.+]*@([A-Za-z0-9][-A-Za-z0-9]+.)+[A-Za-z]{2,14}
手机:0?(13|14|15|18)[0-9]{9}

<a href=”;

  局地常用的元字符

    – “\”     
叫”跳脱字符”。用于转义部分特殊符号,如”.”,”/”

    – “\”     
叫”跳脱字符”。用于转义一对特殊符号,如”.”,”/”

  .    匹配除换行符(\n)以外的人身自由字符

    – “\w”    等价于 [a-zA-Z0-9_] 。也合营汉字

    – “\w”    等价于 [a-zA-Z0-9_] 。也匹配汉字

  \w     匹配字母或数字或下划线或汉字
 

    –
+”      1到多次还足以写成{1,}

    –
+”      1到数次还能写成{1,}

  \W    匹配任意不是字母,数字,下划线,汉字的字符

    – 小括号  来指定子表明式(也叫做分组),然后你就可以钦赐这些子表明式的重复次数了, ([-+.]\w+)*

    – 小括号  来指定子表明式(也叫做分组),然后您就足以内定这么些子表达式的重新次数了, ([-+.]\w+)*

  \s      匹配任意的空白符(TAB、换行符、普通话全角空格)

    – [-+.]   
方括号扩起来的局地正是字符域

    – [-+.]   
方括号扩起来的一对正是字符域

  \S    匹配任意不是空白符的字符

    – .         
匹配除换行符以外的随意字符

    – .         
匹配除换行符以外的自由字符

  \d    匹配数字

  4)代码示例

  4)代码示例

  \D    匹配任意非数字的字符;相当于[^0-9]**

  

  

  \b      匹配单词的发端或收尾

<?php
  $email = 'sishuinianhua@qq.com';
  $preg = '/\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*/';
  $res = preg_match($preg, $email, $preg_res);
  var_dump(111,$res,$preg_res);exit;
<?php
  $email = 'sishuinianhua@qq.com';
  $preg = '/\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*/';
  $res = preg_match($preg, $email, $preg_res);
  var_dump(111,$res,$preg_res);exit;

  \B    匹配不是单词开首或终止的位置

 

 

  ^     匹配字符串的启幕

  – preg_match() :

  – preg_match() :

  [^x]   匹配除了x以外的妄动字符(取反)

2. 网址表明式:

2. 网址表明式:

  $    匹配字符串的扫尾

  1) [a-zA-z]+://[^\s]+ 

  1) [a-zA-z]+://[^\s]+ 

  \     转义符;如要匹配 \ 则写 \\

  2)解析:

  2)解析:

  一些常用的限定符

    – ^   

    – ^   

  *        重复0次或更频繁

      >
放在字符域(如:[^\w])中表示否定(不蕴含的情趣)——“反向选用”

      >
放在字符域(如:[^\w])中表示否定(不包含的意味)——“反向选取”

  +      重复3回或更频仍

           > 
放在表达式此前,表示以方今以此字符起头。(/^n/i,表示以n伊始)。

           > 
放在表明式以前,表示以近年来这些字符起始。(/^n/i,表示以n开始)。

  ?     重复0次或1次

 

 

  {n}     重复n次

    – \s   匹配任意的空白符

    – \s   匹配任意的空白符

  {n,}    重复n次或更频仍

 

 

  {n,m}   重复n次到m次

三、
附录

三、
附录

 

1. 常用元字符
代码    说明
.    匹配除换行符以外的即兴字符
\w    匹配字母或数字或下划线
\s    匹配任意的空白符
\d    匹配数字
\b    匹配单词的始发或终止
^    匹配字符串的起先
$    匹配字符串的竣事

1. 常用元字符
代码    说明
.    匹配除换行符以外的肆意字符
\w    匹配字母或数字或下划线
\s    匹配任意的空白符
\d    匹配数字
\b    匹配单词的上马或甘休
^    匹配字符串的始发
$    匹配字符串的落成

  |      或

 

 

  []    
匹配[]内的字符;如[a]匹配a

2.常用限定符
代码/语法    说明
*    重复零次或更频仍
+    重复二次或更频仍
?    重复零次或1遍
{n}    重复n次
{n,}    重复n次或更频仍
{n,m}    重复n到m次

2.常用限定符
代码/语法    说明
*    重复零次或更频仍
+    重复1回或更频仍
亚洲必赢官网,?    重复零次或壹遍
{n}    重复n次
{n,}    重复n次或更频仍
{n,m}    重复n到m次

  ()     进步优先级

 

 

测试工具:

3.常用反义词
代码/语法    说明
\W    匹配任意不是字母,数字,下划线,汉字的字符
\S    匹配任意不是空白符的字符
\D    匹配任意非数字的字符
\B    匹配不是单词早先或收尾的职位
[^x]    匹配除了x以外的随机字符
[^aeiou]    匹配除了aeiou那多少个假名以外的任意字符

3.常用反义词
代码/语法    说明
\W    匹配任意不是字母,数字,下划线,汉字的字符
\S    匹配任意不是空白符的字符
\D    匹配任意非数字的字符
\B    匹配不是单词开头或收尾的岗位
[^x]    匹配除了x以外的轻易字符
[^aeiou]    匹配除了aeiou那多少个假名以外的任意字符

 

 

网站地图xml地图