php str_replace与preg_replace用法区别_PHP教程
简单替换
echo str_replace("world","john","hello world!");
?>
利用正则表达式来替换
语法:stringobj.replace(rgexp, replacetext)
用str.replace("|",",") 只会替换第一个匹配的字符, str.replace(/|/g,",")则可以替换掉全部匹配的字符(g为全局标志)。
语法
preg_replace(find,replace,string,count)
preg_replace -- 执行正则表达式的搜索和替换
说明
mixed preg_replace ( mixed pattern, mixed replacement, mixed subject [, int limit])
在 subject 中搜索 pattern 模式的匹配项并替换为 replacement。如果指定了 limit,则仅替换 limit 个匹配,如果省略 limit 或者其值为 -1,则所有的匹配项都会被替换。
实例
$string = "april 15, 2003";
$pattern = "/(/w+) (/d+), (/d+)/i";
$replacement = "/${1}1,/$3";
print preg_replace($pattern, $replacement, $string);/* output
======april1,2003
*/
?>
替换数个值
$patterns = array ("/(19|20)(/d{2})-(/d{1,2})-(/d{1,2})/",
"/^/s*{(/w+)}/s*=/");
$replace = array ("//3///4///1//2", "$//1 =");
print preg_replace ($patterns, $replace, "{startdate} = 1999-5-27");
?>
本例将输出:
$startdate = 5/27/1999
例子 4. 使用 /e 修正符
preg_replace ("/(]*>)/e",
"'//1'.strtoupper('//2').'//3'",
$html_body);
?>
这将使输入字符串中的所有 html 标记变成大写
区别preg_replace函数主要用于正则比较方便而str_replace替换字符效率更好,但他们都用于字符替换的函数。
上一篇: python自动投票测试
下一篇: php应用xpath抽取网页超链接
推荐阅读
-
php中静态类与静态变量用法的区别分析_php技巧
-
PHPEXCEL的用法与简介_PHP教程
-
php创建临时文件tempnam与tmpfile区别_PHP教程
-
深入解析fsockopen与pfsockopen的区别_PHP教程
-
接口与抽象类的区别,接口抽象类区别_PHP教程
-
php 转换字符串编码 iconv与mb_convert_encoding的区别说明_PHP教程
-
php中sprintf与printf函数用法区别解析
-
php判断某个方法是否存在函数function_exists (),method_exists()与is_callable()区别与用法解析
-
深入浅析php中sprintf与printf函数的用法及区别
-
PHP中return 和 exit 、break和contiue 区别与用法