gpt4 book ai didi

php - 在PHP中删除文本字符串的一部分

转载 作者:行者123 更新时间:2023-12-04 15:32:08 25 4
gpt4 key购买 nike

我构建了一个表单,但表单的某些行可能会返回空白,并带有默认值。我试图找到一种方法来搜索表单输出,然后删除我知道不需要的位 - 看起来像:

<tr bgcolor="#FFFFFF">
<td>2E</td>
<td id="8003">-800</td>
</tr>

我已经在几个位上有效地使用了 str_replace(),但我的主要问题是 bgcolor="#FFFFFF"可以更改为不同的十六进制值,而且

我可以为我猜到的每一个可能的结果写一个 str_replace(),但是对于这样的事情有 preg_replace 解决方案吗?它必须是一个非常复杂的正则表达式。

最佳答案

您可以使用正则表达式替换 preg_replace() .例如,要删除可变颜色字符串可能存在或不存在的 bgcolor 属性:

$s = preg_replace('! bgcolor="#[0-9a-fA-F]{6}"!', '', $s);

但是,一如既往,不建议使用正则表达式来解析或处理 HTML。很多事情都可能出错:

  • 3个字母的颜色代码;
  • 属性上的单引号;
  • 属性没有引号;
  • 可变空白;
  • 大写属性;
  • 颜色名称;
  • rgb(N,N,N)等合法格式;
  • 等等。

这只是您问题的一部分。

使用 DOM 处理方法要健壮得多,在 PHP 中有多种变体。参见 Parse HTML With PHP And DOM .

关于php - 在PHP中删除文本字符串的一部分,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1572459/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com