代码之家  ›  专栏  ›  技术社区  ›  Moon

如何在PHP中删除自定义标记?

  •  0
  • Moon  · 技术社区  · 16 年前

    我正在尝试从字符串中删除以下标记。

    [caption id="attachment_9" align="alignleft" width="137" caption="test"][/caption]
    

    我尝试了几个正则表达式,但都失败了。

    2 回复  |  直到 12 年前
        1
  •  4
  •   Tchoupi    12 年前
    $output_string = preg_replace('#\[caption[^\]]*\](.*?)\[/caption\]#m', "$1", $input_string)
    

    或者,如果您还想删除开始标记和结束标记之间的任何内容,只需更改 "$1" "" .

        2
  •  0
  •   mikegreenberg    16 年前

    给你:

    http://www.pagecolumn.com/tool/pregtest.htm

    <?php 
    $ptn = "/\[caption.+caption\]/";
    $str = "Otherstuff[caption id=\"attachment_9\" align=\"alignleft\" width=\"137\" caption=\"test\"][/caption]Something else";
    $rpltxt = "@";
    echo preg_replace($ptn, $rpltxt, $str);
    ?>
    
    推荐文章