【问题标题】:Need to replace deprecated ereg_replace [duplicate]需要替换已弃用的 ereg_replace [重复]
【发布时间】:2013-11-23 23:55:00
【问题描述】:

我在一家非营利组织工作,我不是 PHP 专家。

我需要替换以下代码:

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

当我尝试将其修改为 preg_replace 时,每次尝试退出代码时都会出现错误。

【问题讨论】:

  • 不要忘记正则表达式分隔符。
  • 您能否给我们一些关于“我收到错误”的详细信息。

标签: php preg-replace ereg-replace


【解决方案1】:

这样就可以了:

$statut = preg_replace('~[a-z]+://[^<>\s]+[\w/]~i', '<a href="$0">$0</a>', $statut);

但是如果这个替换的目标是保留所有的 url 并将它们转换成链接,你必须稍微改变一下模式。而且,为什么不使用 filter_validate_url 测试它们

【讨论】:

    猜你喜欢
    • 2013-08-27
    • 2011-05-12
    • 2011-06-25
    • 2013-08-22
    • 2011-04-08
    • 1970-01-01
    • 1970-01-01
    • 2015-06-25
    • 1970-01-01
    相关资源
    最近更新 更多