关于PHP的正则替换两个简单问题


preg_replace('~</body>~i', '123</body>', $html 1);

有两个简单的问题想问题下,i我知道应该是不区分大小写的意思,这两边的~什么意思?还有最后那个1代表什么意思

刚才的帖子里,我已经说过了,在 php 中,由于正则片段和正则修饰需要放在一个字符串内,所以需要一个特殊符号作为区分

在字符串开始的第一个字符,作为正则定界符,可以是任意符号,只要正则片段内不出现即可,常用的有 ~、#、@、%之类的,都可以,只要成对出现,且其内部是正则表达式就行

img

替换可以设置替换次数,但是你的这个指令明显应该是少了一个逗号,感觉是无法通过执行的

这里这个波浪线,叫做定界符,表示模式的开始和结束。

代码的作用是将$html中最后一个</body>标签替换为123</body>,一般来说在需要在HTML文档的<body>标签结束前插入一些内容时使用。

您好,我是有问必答小助手,您的问题已经有小伙伴帮您解答,感谢您对有问必答的支持与关注!
PS:问答VIP年卡 【限时加赠:IT技术图书免费领】,了解详情>>> https://vip.csdn.net/askvip?utm_source=1146287632