尊敬的先生/m‘as,我怎样才能用preg_replace或str_replace替换已弃用的ereg_replace,同时仍然具有以下代码中的相同功能?
return ereg_replace("^(.*)%%number%%(.*)$","\\1$i\\2",$number);
///this doesnt work
return preg_replace("^(.*)%%number%%(.*)$","\\1$i\\2",$number);
有没有更聪明的人有线索?
发布于 2011-01-21 21:17:07
试试这个:
return ereg_replace("^(.*)%%number%%(.*)$","\\1$i\\2",$number);
变成了
return preg_replace("/^(.*)%%number%%(.*)$/","\\1$i\\2",$number);
注意正则表达式周围的/。
发布于 2011-01-21 21:19:19
我将采用一种非常棒的手册方法。
PHP手册提供了从POSIX Regex迁移到PCRE的a section。
PCRE函数要求模式包含在delimiters.
祝好运,
Alin
发布于 2011-01-21 21:16:08
PHP中的preg_函数使用的兼容Perl的正则表达式需要模式字符串中的分界字符,定义实际字符串模式的开始和结束位置,以及其他功能的属性,例如不区分大小写。
例如:
$pattern = "/dog/i"; // Search pattern for "dog", case insensitive.
$replace = "cat";
$subject = "Dogs are cats.";
$result = preg_replace($pattern, $replace, $subject);
https://stackoverflow.com/questions/4759063
复制相似问题