加入收藏 | 设为首页 | 会员中心 | 我要投稿 安卓应用网 (https://www.0791zz.com/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > PHP > 正文

php正则反引用和转义符实例讲解

发布时间:2020-05-25 02:34:43 所属栏目:PHP 来源:互联网
导读:本文章向大家介绍php正则反引用和转义符实例讲解,需要的朋友可以参考一下

一、正则反引用

正则表达式,在PHP中我经常能用到。用的场景也很多,比如,正则匹配字符串,判断字符是否存在,正则替换等等。

例子一:

$string = 'abcd';

$re = preg_replace('/(a)/','1A',$string);

echo $re;

//结果

// aAbcd

这里用到了正则的捕获组概念和反引用。

解释:

捕获组我们可以从第一个`(` 向后数, 第一个括号里面匹配到的内容,我们可以用 1来引用,为了看的明显,特意拼接了 `A`,其实我们还可以用 $+数字来表示第几个捕获组。 这里可以用$1,效果和1一样。

例子二:

$string = 'abcd';

$re = preg_replace('/(a)/','$1B',$string);

echo $re;

//结果

//aBbcd

二、转义符

什么是转义符?

在PHP中我们用 `` 来转译一些特殊的字符。

例子三:

$string = 'abcd';

$re = preg_replace('/(a)/','1B',$string);

echo $re;

//结果

//aBbcd

解释: 这里的 1 把是作为捕获组的反引用。

例子四:

$string = 'abcd';

$re = preg_replace('/(a)/',$string);

echo $re;

//结果

//aBcd

解释:这里的` 1 `,第一个``,转译了第二个``,那么就成了 `1B` , 其实效果和例子三的 `1` 是一样的。

例子五:

$string = 'abcd';

$re = preg_replace('/(a)/',$string);

echo $re;

//结果

//1Bbcd

解释:这里的`1`,第一个``,转译了第二个``,那么就剩下了`1`,`` 输出 ``,最后,就剩下 `1`了。

三、总结

1、PHP正则中的反引用,1 和 $1 效果是一样的,我们都可以拿来用。

2、PHP正则中的转义符,当遇到多个`` 的时候,我们可以先"去掉" 一个,然后,在去匹配。这样就好理解啦。

(编辑:安卓应用网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读