正则表达式

一.符号

1.“/”是定界符,“/”定界符之间的部分就是将要在目标对象中进行匹配的模式。

同时为了正则更加灵活,引入了元字符,即“+”, “*”,以及 “?”。

(1)“+”元字符规定其前导字符必须在目标对象中连续出现一次或多次

比如:/php+/,能够与“phpp”匹配,即字母ph后面连续出现一个或多个字母p的字符串相匹配。

(2)“*”元字符规定其前导字符必须在目标对象中出现零次或连续多次

比如:/php*/能够与“phpddt”相匹配,即ph后面可以有0个或多个p

(3)“?”元字符规定其前导对象必须在目标对象中连续出现零次或一次。

比如:/php?/能够“pher”匹配,即phh后面可以有0个或者1个p

其他重要的元字符:

\s:用于匹配单个空格符,包括tab键和换行符;
\S:用于匹配除单个空格符之外的所有字符;
\d:用于匹配从0到9的数字;
\w:用于匹配字母,数字或下划线字符;
\W:用于匹配所有与\w不匹配的字符;
. :用于匹配除换行符之外的所有字符。
示例:/\s+/用于匹配目标对象中的一个或多个空格字符

2.定位符用于规定匹配模式在目标对象中的出现位置。

常用的有“^”, “$”, “\b” 以及 “\B”

(1)“^”定位符规定匹配模式必须出现在目标字符串的开头
(2)“$”定位符规定匹配模式必须出现在目标对象的结尾
(3)\b定位符规定匹配模式必须出现在目标字符串的开头或结尾的两个边界之一
(4)“\B”定位符则规定匹配对象必须位于目标字符串的开头和结尾两个边界之内

二.实例

1.邮箱

$email = "2342342@qq.com";
preg_match("/^([a-zA-Z0-9])+([a-zA-Z0-9_-])*@([a-zA-Z0-9])+([.a-zA-Z0-9])+$/",$email);

2.preg_quote:转义正则表达式字符

$str = "php点点通是一个学习php的网站,(⊙o⊙)…"; 
echo preg_quote($str); 
//显示
//php点点通是一个学习php的网站,\(⊙o⊙\)…

3.preg_splite分割字符串

//preg_split("正则","字符串")分割字符串 
$php = "+php++点点通++++是好网站"; 
$field = preg_split("/\+{1,}/",$php); 
foreach($field as $f){ 
echo $f." "; 
} 
//显示
//php 点点通 是好网站
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值