【发布时间】:2011-04-29 11:06:09
【问题描述】:
我正在从特定 URL 中提取文章以转换为句子,但文本正文具有消除某些句子之间空格的随机行为,导致:
Jane went to the store.She bought a dog. The dog was very friendly.It had no teeth.
我的一些文本是股票代码 (AZ.GAN) 等。所以我不能简单地在没有相邻空格的所有句点之间插入一个空格。
Jane bought several shares of (TY.JPN). She lost all her cash money."Arg!" She cried.
上面的例子会破坏股票代码变量。
想知道是否有人知道造成这种情况的原因。我尝试了几种 HTML 和 DOM。我使用 Simple_DOM 来获取明文。虽然,如果我手动执行或使用任何其他解析引擎,我会得到相同的结果。
【问题讨论】:
-
这听起来不对...您有源数据的示例 URL 吗?还是发生这种情况的简短 sn-p(带标记)?我假设它不会在浏览器中以这种方式显示(如果是,它就是 GIGO)
-
如果是换行符 PHP nl2br() 应该会有所帮助。看看htmlspecialchars()和htmlentities()
-
我无法访问标记,它是通过简单的 DOM 对象函数进行预处理的,我试图对其进行操作但没有成功。纯文本获取file_get_html('url')->plaintext。不确定它在导致不稳定间距的过程中丢失了什么。可能是自动换行器。
-
@Alix: Garbage In, Garbage Out :)
-
@sarnold:哦,酷。不知道有一个缩写! =)
标签: php html parsing whitespace simpledom