PHP:从 HTML 标签中过滤出文本,对其进行处理,然后再次将文本放置在原来的位置(Drupal 9)

问题描述 投票:0回答:1

我一直在尝试找到一种使用 PHP 解决以下问题的方法, 我有来自 CKEditor 的 HTML 文本,我想从文件中替换我找到的匹配的某些单词,并添加指向这些单词的链接。但我必须忽略来自

<i>,<b>,<strong>,<table>,<figure>
等标签的单词,只允许来自
<p>
标签的单词。 我可以使用 PHP 函数或逻辑来实现此目的吗?请帮忙。 预先感谢。

我还没有尝试太多,但我把头撞在墙上来解决这个问题。 ;)

php filter text drupal processor
1个回答
0
投票

是的,您可以将 preg_match 与正则表达式规则一起使用 示例

$re = '/<p.*?>(.*?)<\/p>/m';
$str = '<i> test</i>
<p>x</p>';

preg_match_all($re, $str, $matches, PREG_SET_ORDER, 0);

// Print the entire match result
var_dump($matches);

https://regex101.com/r/AdqV0a/1

此外,如果

可以包含或不包含上述任何标签,您也可以更具体 有几个选项可以解决,例如 preg_match、preg_replace 等...... [上面的代码只是简单的例子]

© www.soinside.com 2019 - 2024. All rights reserved.