代码之家  ›  专栏  ›  技术社区  ›  Victor Bjelkholm

替换整个字符串

  •  -3
  • Victor Bjelkholm  · 技术社区  · 15 年前

    我的preg\u replace替换了整个字符串,而不仅仅是表达式适合的位。

    代码:

    http://beta.yapaste.com/bd
    

    <table id=\"post24100391\" style=\"width: 100%;\" class=\"p4\" >
    

    谢谢你的帮助。

    1 回复  |  直到 15 年前
        1
  •  1
  •   Jonathan Fingland    15 年前

    对。。。。。正则表达式匹配整个表。。。。它将用$replace替换整个字符串。

    你想换什么?

    你可以用。。。

    preg_replace("/(<table.*?>).*(<\/table>)/","\$1$replace\$2},$str);
    

    或者你可以在零件周围使用一个非捕获组来不替换。。。

    preg_replace("/(?:<table.*?>).*(?:<\/table>)/",$replace,$str) //not tested, though
    

    编辑 对OP变更的回应

    preg_replace("/<table.*?>/",$replace,$str);
    

    推荐文章