php 字符串替换通配符

php string replace wild card

我有这样的东西,我想 trim 除了这部分的所有内容作为其用户生成的数据我们没有完全控制但模式是完全控制的所以用户数据应该只是这样我只想要这部分

这是我想要的部分:

  <b id="timer"></b>

用户提交的字符串总数应如下所示:

  <b id="timer" style="font-family:"Mono";color:"#fgt875";"></b>

我想使用 str_replace 或 preg 替换来实现此目的。 可能吗?

试试下面的代码 -

<?php

    $str = '<b id="timer" style="font-family:"Mono";color:"#fgt875";"></b>';

    echo preg_replace("/<([a-z][a-z0-9]*)(?:[^>]*(\sid=['\"][^'\"]*['\"]))?[^>]*?(\/?)>/i",'<>', $str);

?>

这也有效。

参考 Link : https://www.php.net/manual/en/function.preg-replace.php

<?php
    $dm = '<p>Dhaval</p>';
    echo preg_replace("/<([a-z][a-z0-9]*)(?:[^>]*(\sid=['\"][^'\"]*['\"]))?[^>]*?(\/?)>/i",'<>', $dm);
?>