GASALA
V2EX  ›  问与答

求一段正则

  •  
  •   GASALA · Dec 30, 2013 · 3311 views
    This topic created in 4546 days ago, the information mentioned may be changed or developed.
    想实现跟v2ex一样效果,正文中的url网址自动转成链接,图片网址自动转成图片显示。自己写的总是会相互干扰。苦恼。
    3 replies    1970-01-01 08:00:00 +08:00
    Mutoo
        1
    Mutoo  
       Dec 30, 2013   ❤️ 1
    `图像链接`显然是`链接`的子集,如果你用两个正则分次处理,难免会产生干扰。即将图像变成img标记后,src里面的链接在第二次正则的时候会被匹配到。

    php的有一个解决方案是用 preg_replace_callback 先捕获所有链接,再在回调中分类处理(二次匹配),这样可以保证每一个链接只处理一次。

    http://hk1.php.net/preg_replace_callback
    Mutoo
        2
    Mutoo  
       Dec 31, 2013
    整理了一篇日志,里面有代码片段可以参考
    http://blog.mutoo.im/2013/12/solving-regex-conflict.html
    GASALA
        3
    GASALA  
    OP
       Dec 31, 2013
    @Mutoo 非常感谢^_^
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Solana   ·   5603 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 38ms · UTC 02:36 · PVG 10:36 · LAX 19:36 · JFK 22:36
    ♥ Do have faith in what you're doing.