Php - Str_replace 无法识别空格

Php - Str_replace not recognizing whitespace

我有一个非常简单的问题。我需要删除整个

<td colspan="3" rowspan="1"> </td>

来自 html 的标签只有当它为空时(虽然它不是完全空的,有某种空白)。尝试使用:

    $html = str_replace("<td colspan=\"3\" rowspan=\"1\"> </td>","",$html);
    $html = str_replace("<td colspan=\"3\" rowspan=\"1\">&nbsp;</td>","",$html);

没有成功。

    preg_replace("/<td[^>]*>[\s|&nbsp;]*<\/td>/", '', $html);

也没用。

这应该是一个相当简单的解决方案,有什么建议吗?

也许是这个?如果存在,它还将匹配多个空格。

<?php

$result = preg_replace('#<td[^>]*>([\s]|&nbsp;)*<\/td>#i', '', $html);

var_dump($result);