您的位置:首页 > 编程语言 > PHP开发

PHP正则表达式的逆向引用与子模式 php preg_replace应用

2014-11-11 20:32 459 查看
mixed preg_replace ( mixed pattern, mixed replacement, mixed subject [, int limit])

功能

在 subject 中搜索 pattern 模式的匹配项并替换为 replacement。如果指定了 limit,则仅替换 limit 个匹配,如果省略 limit 或者其值为 -1,则所有的匹配项都会被替换。
replacement可以包含\\n形式或$n形式的逆向引用,n可以为0到99,\\n表示匹配pattern第n个子模式的文本,\\0表示匹配整个pattern的文本。

子模式

$pattern参数中被圆括号括起来的正则表达式,子模式的数目即从左到右圆括号的数目。(pattern即模式)

例子

需求:把OT函数由OT(a)改成OT(a,b),加一个参数

<?php

$str = <<<EOD
_Article_Source=OT('.div(PosID('bd_nav')>0)[1#].a(PosHTML('/b*')>0)[1#]')
;_Article_Author=OT('.div(PosClass('doc_top p9')>0)[1#].a(PosClass('b')>0)[1#]')

EOD;

$reg='/(=OT\(.+)(\)[\r,\n])/';

$replacement='$1,n$2';
echo preg_replace($reg,$replacement,$str);
?>
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: