不确定如何执行此regex



在问了下面的问题并思考之后,我相信这个正则表达式就是我所需要的。不知道怎么做。

![anycharacter](anycharacter)[anycharacter](anycharacter)

-原标题和消息-

PHP降价额外-不允许图像

现在我只设置了css来隐藏允许标记的区域中的图像。我想这样做,如果使用markdown图像语法,图像就不会显示。事实上,我更希望它只是变成一个链接,但简单地拒绝它也没关系。我想用正则表达式来检查![text](imagelink)是可行的,但我对正则表达式不够精通,无法做到这一点,也无法确定这是否是最好的选择。

-edit-现在我正在做preg_replace('/![/', "[", $text );的preg_replace,但我仍然不认为这是最好的解决方案,因为它会删除!甚至有时可能还有其他原因![出现了。我想我只需要知道如何用[anycharacter](anycharacter) 替换![anycharacter](anycharacter)

这实际上不是我的代码http://core.svn.wordpress.org/tags/1.5.1.3/wp-content/plugins/markdown.php但是您可以使用它在您的_reference_ callback($matches)和_DoImages_,然而,这只是一个要点。

$text = preg_replace_callback('{
    (               # wrap whole match in $1
      ![
        (.*?)       # alt text = $2
      ]
      [ ]?              # one optional space
      (?:n[ ]*)?       # one optional newline followed by spaces
      [
        (.*?)       # id = $3
      ]
    )
    }xs', 
    '_DoImages_reference_callback', $text);
#
# Next, handle inline images:  ![alt text](url "optional title")
# Don't forget: encode * and _
$text = preg_replace_callback("{
    (               # wrap whole match in $1
      !\[
        (.*?)       # alt text = $2
      \]
      \(           # literal paren
        [ \t]*
        <?(S+?)>?  # src url = $3
        [ \t]*
        (           # $4
          (['"])   # quote char = $5
          (.*?)     # title = $6
          \5       # matching quote
          [ \t]*
        )?          # title is optional
      \)
    )
    }xs",
    '_DoImages_inline_callback', $text);

最新更新