首页 / 正则 / php中的正则反向引用求解?
php中的正则反向引用求解?
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了php中的正则反向引用求解?,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含1903字,纯文字阅读大概需要3分钟。
内容图文
![php中的正则反向引用求解?](/upload/InfoBanner/zyjiaocheng/197/b861313a96e14e73b3941cb41f99c5a6.jpg)
老师说的是反向捕获,好像使用的是{1},我试了下不行,然后网上说的是\1,有反应但是不对,然后我自己改了个下面写的\0,就反向捕获到了,但是网上查了下,好像没这样写的,,,,,但是我的确捕获到了4个数字,是怎么回事??? 还有,数组式正则的什么意思?
$a="abcd 1234reo 5678";
//下面我们使用php中的正则表达式来处理上面的内容
$myreg=array(
"/(\d){4}/i"
);
$con=array(
'[ \0]' // 捕获到数字,不改他,直接加上一个中括号,我自己弄出来的写法,?
);
回复讨论(解决方案)
运行结果:wqe{2313}jyu6y{6546}iuoi
运行结果:wqe{2313}jyu6y{6546}iuoi
对的,,能解释一下吗?
还有,如果是引用其中一部分怎么办?
如“1234”匹配的,引用里面的数字,再加中括号[1234]?
我把正则表达式写在数组里面去了,你这个方法又不行了,在数组里面必须是${0}才行
运行结果:wqe{2313}jyu6y{6546}iuoi
我知道了,是你的正则写法和我的写法不一样导致的,但是为什么呢?我写的没有错啊?
我是:/(\d){4}/i
你是:/(\d{4})/
这两个居然不一样?求解???????????
/(\d{4})/
[$1]
反向引用的数字表示正则式从左向右数第几对圆括号内的内容,注意 (?...)不计算在内
当有歧义时才需要使用{}
例如反向引用后面要补一个数字就会产生歧义,要写成${1}1??表示反向引用第一对括号内容,后面加数字1
但$11则是反向引用第 十一对括号的内容(如果没有那么多括号就为空)
/((?:123)456(789))/
$1得到123456789
$2得到789
/(\d{4})/
[$1]
反向引用的数字表示正则式从左向右数第几对圆括号内的内容,注意 (?...)不计算在内
当有歧义时才需要使用{}
例如反向引用后面要补一个数字就会产生歧义,要写成${1}1??表示反向引用第一对括号内容,后面加数字1
但$11则是反向引用第 十一对括号的内容(如果没有那么多括号就为空)
我是:/(\d){4}/i
你是:/(\d{4})/
这两个居然不一样?求解???????????
已经弄清楚了,谢谢
子表达式
捕获
反向引用
感谢各位!
内容总结
以上是互联网集市为您收集整理的php中的正则反向引用求解?全部内容,希望文章能够帮你解决php中的正则反向引用求解?所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。