我正在为客户开发一个项目,我需要从旧版HTML页面解析数据,以提高存储效率。数据以这种基本格式显示,在一行上有多个键/值对。
Key1: Value1 Key2: Value2...
我可以使用preg_match_all('/\w+:\s+\S+/', $line, $items)
我遇到的问题是少数几行包含这样的文字:
Key1: Value1 Key2: Value2
在这种情况下,我的脚本会显示Value1 = Value1 Key2:
。
我尝试使用
和html_entity_decode($line)
替换str_replace(' ', ' ', $line)
字符串。对于这两者,我在输出中仍然有
个字符,并且字符串未正确解析。
我要解析的页面是WordPress页面。检查页面的wp_post
记录显示
字符串存储在数据库中。我相信这些页面是通过MS_Access的导出填充的。在我的脚本中,我已将$line
的父级传递给$strip_tags()
。
有没有可靠的方法来消除/过滤/替换此
字符串?
答案 0 :(得分:1)
在这一天,我一直在靠墙撞墙,终于找到了答案。我测试了其他人给出的每个答案。没有工作。 -1适合所有人!
作为Unicode字符串存储在数据库中。它仅在浏览器中呈现时显示为
。这将删除它。
$line = str_replace("\xC2\xA0", " ", $line);