PHP preg_replace 删除字符串中的第一个 HTML 元素

标签 php preg-replace

我想在 PHP 中删除 html 字符串的整个第一个元素(它始终是一个段落)。

我当前的方法正在使用:

$passage = preg_replace('/.*?\b'.'</p>'.'\b/s', '', $passage, 1);

由于</p>中的特殊字符,这不起作用

我知道以下内容将删除字符串中出现“one”一词之前的所有内容

$passage = preg_replace('/.*?\b'.'one'.'\b/s', '', $passage, 1);

最佳答案

如果您将“/”用作分隔符,则必须使用反斜杠对其进行转义:所以它是 <\/p>

编辑:您应该添加 ^标记字符串的开头。

另一个解决方案:您可以使用其他分隔符,例如 # .

完整代码$passage = preg_replace('#^.*?</p>#is', '', $passage, 1);

关于PHP preg_replace 删除字符串中的第一个 HTML 元素,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4701893/

相关文章:

php - 使用 preg_replace 无法正常工作

php - preg_replace 排除 <a href ='' '></a> PHP

php - 如何替换双引号和单引号外的单词

PHP 将 mysql 的部分结果解析为 preg_replace 上的变量

php - preg_replace $变量为字符串

PHP 不可见字符串

php - 让 .get() 在 jquery 中工作

php - PHP 中的字符串和 "binary"字符串有什么区别?

php - 如果帐户未激活,Laravel 会重定向

php - 将 body 类添加到类别及其所有子类别 |吴商务