preg_replace的使用方法
来源:互联网 发布:java之父 aws 编辑:程序博客网 时间:2024/06/03 15:25
preg_replace —执行一个正则表达式的搜索和替换
说明
$pattern
, mixed$replacement
, mixed$subject
[, int $limit
= -1 [, int &$count
]] )搜索subject
中匹配pattern
的部分, 以replacement
进行替换。
参数
pattern
要搜索的模式。可以使一个字符串或字符串数组。
可以使用一些PCRE修饰符, 包括被弃用的'e'(PREG_REPLACE_EVAL),可以为这个函数指定。
replacement
用于替换的字符串或字符串数组。如果这个参数是一个字符串,并且
pattern
是一个数组,那么所有的模式都使用这个字符串进行替换。如果pattern
和replacement
都是数组,每个pattern
使用replacement
中对应的 元素进行替换。如果replacement
中的元素比pattern
中的少, 多出来的pattern
使用空字符串进行替换。replacement
中可以包含后向引用\\n或(php 4.0.4以上可用)$n ,语法上首选后者。 每个 这样的引用将被匹配到的第n个捕获子组捕获到的文本替换。n 可以是0-99,\\0和$0代表完整的模式匹配文本。 捕获子组的序号计数方式为:代表捕获子组的左括号从左到右, 从1开始数。如果要在replacement
中使用反斜线,必须使用4个("\\\\",译注:因为这首先是php的字符串,经过转义后,是两个,再经过 正则表达式引擎后才被认为是一个原文反斜线)。当在替换模式下工作并且后向引用后面紧跟着需要是另外一个数字(比如:在一个匹配模式后紧接着增加一个原文数字), 不能使用\\1这样的语法来描述后向引用。比如,\\11将会使 preg_replace()不能理解你希望的是一个\\1后向引用紧跟一个原文1,还是 一个\\11后向引用后面不跟任何东西。 这种情况下解决方案是使用\${1}1。 这创建了一个独立的$1后向引用, 一个独立的原文1。
当使用被弃用的 e 修饰符时, 这个函数会转义一些字符(即:'、"、 \ 和 NULL) 然后进行后向引用替换。当这些完成后请确保后向引用解析完后没有单引号或 双引号引起的语法错误(比如: 'strlen(\'$1\')+strlen("$2")')。确保符合PHP的字符串语法,并且符合eval语法。因为在完成替换后, 引擎会将结果字符串作为php代码使用eval方式进行评估并将返回值作为最终参与替换的字符串。
subject
要进行搜索和替换的字符串或字符串数组。
如果
subject
是一个数组,搜索和替换回在subject
的每一个元素上进行, 并且返回值也会是一个数组。limit
每个模式在每个
subject
上进行替换的最大次数。默认是 -1(无限)。count
如果指定,将会被填充为完成的替换次数。
返回值
如果subject
是一个数组, preg_replace()返回一个数组, 其他情况下返回一个字符串。
如果匹配被查找到,替换后的subject
被返回,其他情况下 返回没有改变的subject
。如果发生错误,返回 NULL
。
- preg_replace的使用方法
- PHP preg_replace的使用
- preg_replace
- preg_replace
- preg_replace
- preg_replace正则表达式的使用
- 关于PHP的preg_replace的使用
- 关于preg_replace函数的问题讲解
- PHP5.2下preg_replace函数的问题
- 比较strtr, str_replace和preg_replace的效率
- 慎用preg_replace危险的/e修饰符
- preg_replace统一替换图片的title
- 关于 preg_match 以及preg_replace的问题。
- preg_replace()和ereg_replace()函数的使用的比较
- preg_replace()和ereg_replace()函数的使用的比较
- preg_replace -- 执行正则表达式的搜索和替换
- ecshop修饰符preg_replace/e不安全的几处改动
- 安装ecshop 常见的 Strict Standards: array_shift()和Deprecated: preg_replace():
- html meta中的viewport指令
- 分享pdf转图片在线免费的方法
- JAVA 判断null,''/ js判断null,'',undefined各种情况的判断方法
- 单用户登录
- 【hihocoder1039】字符消除——模拟
- preg_replace的使用方法
- Windows编程 从消息窗口到基本窗口 游戏循环窗口框架的简单实现
- system ui 1
- Robi改造计划更新---框架终于搭出来了
- poj1273
- Android学习笔记--4.activity的声明周期
- Linux命令大全
- OC与swift混编
- 数列分段