【问题标题】:regex for parsing a img tag in html with parameters用于解析带有参数的 html 中的 img 标签的正则表达式
【发布时间】:2014-07-26 15:25:29
【问题描述】:

我有这种符号语言用于在我的博客上发布内容,我使用以下行来解析图像

$$link_to_image width height alternative_description$$

我用下面的 php 语句来解析这个

preg_replace('/\$\$(.*?)\s\d+\s\d+\s(.*?)\$\$/','<img src = "\\1" width = "\\2px" height = "\\3px" alt = "\\4" >',$this->text);

其中 $this->text 是博客文章的全部文本。

问题是当我输入类似 $$http://s15.postimg.org/60dod0gu3/input.png 400 300 Raw data$$我得到了

<img src="http://s15.postimg.org/60dod0gu3/input.png" width="Raw datapx" height="px" alt="">

我写的正则表达式有什么问题?

【问题讨论】:

    标签: php regex html-parsing backreference


    【解决方案1】:

    您只捕获 2 个组,但您想要 4 个。为数字添加另外两个捕获组:

    \$\$(.*?)\s(\d+)\s(\d+)\s(.*?)\$\$
    

    Demo.

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2013-12-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-11-20
      • 2013-07-23
      • 2011-08-17
      • 2019-01-18
      相关资源
      最近更新 更多