php str_replace与preg_replace用法区别

WBOY
リリース: 2016-06-02 09:14:17
オリジナル
1381 人が閲覧しました

str_replace() 函数使用一个字符串替换字符串中的另一些字符,简单替换,代码如下:

替换数据,代码如下:

利用正则表达式来替换.

语法: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,则所有的匹配项都会被替换,实例代码如下:

<?php 
$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
ログイン後にコピー

实例,使用 /e 修正符,代码如下:

<?php 
preg_replace ("/(<//?)(/w+)([^>]*>)/e","&#39;//1&#39;.strtoupper(&#39;//2&#39;).&#39;//3&#39;",$html_body); 
	
ログイン後にコピー

这将使输入字符串中的所有 html 标记变成大写,区别preg_replace函数主要用于正则比较方便而str_replace替换字符效率更好,但他们都用于字符替换的函数.

関連ラベル:
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のおすすめ
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート