【问题标题】:Preg replace etting error [duplicate]Preg_replace 出现错误 [重复]
【发布时间】:2018-02-24 12:31:45
【问题描述】:

preg 替换时出现错误。

这是我的代码

$search='+5DR';
$replace='5';
$tempString='1.2 EASY +5DR';
echo $tempString = preg_replace('~\b('. $search.')\b~', $replace, $tempString);

错误详情

<br />
<b>Warning</b>:  preg_replace(): 
Compilation failed: nothing to repeat at 
offset 3 in <b>[...][...]</b> on line <b>6</b><br />

【问题讨论】:

  • 如果您需要检查固定字符串,您应该考虑使用str_replace

标签: php regex preg-replace preg-match preg-replace-callback


【解决方案1】:

+ 是一个保留的 preg 操作符,因此如果它是掩码的一部分,它应该被正确地转义。

$search=preg_quote('+5DR');

http://php.net/manual/en/function.preg-quote.php

【讨论】:

    猜你喜欢
    • 2013-12-16
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-05-08
    • 2015-07-03
    • 2021-01-17
    • 2013-03-17
    • 2016-11-27
    相关资源
    最近更新 更多