php中有没有一个函数可以对数组中的所有项执行regex replace之类的操作?
我有一个数组,其中包含大量的html标签与文本在他们和我想删除标签。
所以基本上我把它转换成:
$m = [
"<div>first string </div>",
"<table>
<tr>
<td style='color:red'>
second string
</td>
</tr>
</table>",
"<a href='/'>
<B>third string</B><br/>
</a>",
];
改为:
$m = [
"first string",
"second string",
"third string"
]
正则表达式(希望)匹配我想要删除的所有内容,如下所示:
/<.+>/sU
问题是我现在应该如何使用它?(我的数组实际上有50多个条目,每个条目中可能有大约10个匹配项,所以使用preg_replace可能不是正确的方法,或者是吗?)
5条答案
按热度按时间nhhxz33t1#
这里不需要正则表达式,只需要使用
strip_tags()
来去掉所有的html标签,然后简单地使用trim()
输出,例如。inkz8wg92#
如果您希望使用regex方法,可以简单地执行以下操作:
mqkwyuun3#
array_map()和strip_tags()
同样的原理也适用于修剪。
6yt4nkrj4#
这里是一个带有对象检查的多维数组的变体
bnl4lu3b5#
对于关联多维数组,我更喜欢使用
array_walk_recursive
:参见文档:https://www.php.net/manual/en/function.array-walk-recursive.php
如果您对数据有把握,则可以跳过
is_string
,如下所示: