我必须转换ereg_replace为preg_replace
ereg_replace代码是:
ereg_replace( '\$([0-9])', '$\1', $value );
Run Code Online (Sandbox Code Playgroud)
由于preg由开始和结束反斜杠表示,我假设转换是:
preg_replace( '\\$([0-9])\', '$\1', $value );
Run Code Online (Sandbox Code Playgroud)
由于我对正则表达式没有很好的了解,我不确定上述是否是正确的使用方法?
Taz*_*Taz 12
ereg_replace()和之间的区别之一preg_replace()是模式必须用分隔符包围:delimiter + pattern + delimiter.如文档中所述,分隔符可以是任何非字母数字,非反斜杠,非空白字符.这意味着有效的分隔符是:/,#,~,+,%,@,!和<>,与前两个是最经常使用(但是这仅仅是我的猜测).
如果你ereg_replace()按预期工作,那么只需在模式中添加分隔符,它就可以完成任务.以下所有示例都有效:
preg_replace('/\$([0-9])/', '$\1', $value);
Run Code Online (Sandbox Code Playgroud)
要么
preg_replace('#\$([0-9])#', '$\1', $value);
Run Code Online (Sandbox Code Playgroud)
要么
preg_replace('%\$([0-9])%', '$\1', $value);
Run Code Online (Sandbox Code Playgroud)