利用preg_replace搭配nodeValue删除多维数组中的空格或字符串的方法解析

[1]=>
  array(9) { [0]=> string(5) "Johor" [1]=> string(0) "" [2]=> string(10) "KotaTinggi" [3]=> string(3) "29*" [4]=> string(2) " " [5]=> string(2) " " [6]=> string(2) " " [7]=> string(2) " " [8]=> string(2) " " } 

以下是我尝试转换的代码...

foreach ($table_rows as $row => $tr) { //获取table里的tr元素 foreach ($tr->childNodes as $td) { //获取tr里的td元素然后把td的值赋予新的二维数组 $data[$row][] = preg_replace('/\s+/', '', str_replace(' ','',$td->nodeValue)); //在这里去除空格都不行 //$data的输出就是上面的数组 } }

我也尝试了下面这个代码来删除那连个空格,也是不行...

 
foreach ($table_rows as $row => $tr) { foreach ($tr->childNodes as $td) { $data[$row][] = preg_replace('/[\r\n\s]+/', '', trim($td->nodeValue, "")); } }

后来发现是写法有误

在外国stackflow大神给的答案,同样遇到这种问题的可以参考

foreach ($table_rows as $row => $tr) { foreach ($tr->childNodes as $td) { $data[$row][] = preg_replace("/[^a-zA-Z0-9]/", "", $td->nodeValue); } }

转载于:https://www.cnblogs.com/PugnaHD/p/6369394.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值