ereg_replace

来源:互联网 发布:stayreal淘宝官方店 编辑:程序博客网 时间:2024/06/03 23:42
ereg_replace

(PHP 3, PHP 4 )

ereg_replace -- 替换正则表达式

说明

string ereg_replace ( string pattern, string replacement, string string)

本函数在 string 中扫描与pattern 匹配的部分,并将其替换为 replacement

返回替换后的字符串。(如果没有可供替换的匹配项则会返回原字符串。)

如果 pattern 包含有括号内的子串,则replacement 可以包含形如 //digit 的子串,这些子串将被替换为数字表示的的第几个括号内的子串;//0 则包含了字符串的整个内容。最多可以用九个子串。括号可以嵌套,此情形下以左圆括号来计算顺序。

如果未在 string 中找到匹配项,则string 将原样返回。

例如,下面的代码片断输出 "This was a test" 三次:

例子 1. ereg_replace() 例子

<?php

$string
= "This is a test";
echo
ereg_replace (" is"," was", $string);
echo
ereg_replace ("( )is","//1was", $string);
echo
ereg_replace ("(( )is)","//2was", $string);

?>

要注意的一点事如果在 replacement 参数中使用了整数值,则可能得不到所期望的结果。这是因为ereg_replace() 将把数字作为字符的序列值来解释并应用之。例如:

例子 2. ereg_replace() 例子

<?php
/* 不能产生出期望的结果 */
$num = 4;
$string = "This string has four words.";
$string = ereg_replace('four',$num, $string);
echo
$string;   /* Output: 'This string has   words.' */

/* 本例工作正常 */
$num = '4';
$string = "This string has four words.";
$string = ereg_replace('four',$num, $string);
echo
$string;   /* Output: 'This string has 4 words.' */
?>

例子 3. 将 URL 替换为超连接

<?php
$text
= ereg_replace("[[:alpha:]]+://[^<>[:space:]]+[[:alnum:]/]",
                     
"<a href=/"//0/">//0</a>",$text);
?>

提示: preg_replace() 函数使用了 Perl 兼容正则表达式语法,通常是比ereg_replace() 更快的替代方案。


原创粉丝点击