Maison  >  Article  >  php教程  >  【夯实PHP基础系列】PHP正则表达式

【夯实PHP基础系列】PHP正则表达式

WBOY
WBOYoriginal
2016-09-24 09:02:461686parcourir

一、 概述

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

 

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

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)解析:

    -- "\"      叫"跳脱字符"。用于转义一些特殊符号,如".","/"

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

    -- "+"      1到多次还可以写成{1,}

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

    -- [-+.]    方括号扩起来的部分就是字符域

    -- .          匹配除换行符以外的任意字符

  4)代码示例

  

<span style="color: #000000;">php
  </span><span style="color: #800080;">$email</span> = 'sishuinianhua369@126.com'<span style="color: #000000;">;
  </span><span style="color: #800080;">$preg</span> = '/\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*/'<span style="color: #000000;">;
  </span><span style="color: #800080;">$res</span> = <span style="color: #008080;">preg_match</span>(<span style="color: #800080;">$preg</span>, <span style="color: #800080;">$email</span>, <span style="color: #800080;">$preg_res</span><span style="color: #000000;">);
  </span><span style="color: #008080;">var_dump</span>(111,<span style="color: #800080;">$res</span>,<span style="color: #800080;">$preg_res</span>);<span style="color: #0000ff;">exit</span>;

 

  -- preg_match() : http://php.net/manual/zh/function.preg-match.php

2. 网址表达式:

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

  2)解析:

    -- ^   

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

           >  放在表达式之前,表示以当前这个字符开始。(/^n/i,表示以n开头)。

 

    -- \s   匹配任意的空白符

 

三、 附录

1. 常用元字符
代码    说明
.    匹配除换行符以外的任意字符
\w    匹配字母或数字或下划线
\s    匹配任意的空白符
\d    匹配数字
\b    匹配单词的开始或结束
^    匹配字符串的开始
$    匹配字符串的结束

 


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

 


3.常用反义词
代码/语法    说明
\W    匹配任意不是字母,数字,下划线,汉字的字符
\S    匹配任意不是空白符的字符
\D    匹配任意非数字的字符
\B    匹配不是单词开头或结束的位置
[^x]    匹配除了x以外的任意字符
[^aeiou]    匹配除了aeiou这几个字母以外的任意字符

 

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn