XPath在提取文本时摆脱换行符

时间:2015-12-01 20:12:27

标签: r xpath

在下一个示例中删除换行符的最佳方法是什么:

文本:

<p>Le danger vient également des redoutés services de sécurité, auxquels de nombreuses exactions sont imputées durant les 23 ans du régime Ben Ali, et de l'élite corrompue qui contrôle encore des secteurs entiers de l'économie, a estimé Richmaoui, qui dirige la section "<em>Etat de droit</em>" du HCR.&nbsp;</p>

我正在使用XPath:

//p//text()[normalize-space()]|//h3//text()[normalize-space()]

结果:

Le danger vient également des redoutés services de sécurité, auxquels de nombreuses exactions sont imputées durant les 23 ans du régime Ben Ali, et de l'élite corrompue qui contrôle encore des secteurs entiers de l'économie, a estimé Richmaoui, qui dirige la section " 


Etat de droit 

" du HCR. 

我需要相同的结果,但没有换行符:

     Le danger vient également des redoutés services de sécurité, auxquels de nombreuses exactions sont imputées durant les 23 ans du régime Ben Ali, et de l'élite corrompue qui contrôle encore des secteurs entiers de l'économie, a estimé Richmaoui, qui dirige la section "Etat de droit" du HCR. 

UPD

使用R中的一个命令进行管理:

xpathSApply(url.html, "//p[normalize-space()]|//h3[normalize-space()]", xmlValue) 

1 个答案:

答案 0 :(得分:0)

如果确保一次只有一个元素与XPath匹配,则可以稍微修改XPath以返回包含整个文本节点的元素(样本中的<p>元素上面的标记)包含在normalize-space()函数中:

normalize-space(//p[text()[normalize-space()]])

...否则使用纯XPath 1.0表达式

无法实现

演示链接: http://www.xpathtester.com/xpath/dd6fc2aaf1e8c86e283128ab777033c0

输出

  

Le dangervientégalementdesredoutésservicesdesécurité,auxquels de nombreuses exactionssontintuutéesdurantles 23 ansdrégimeBenAli,et del'élitecorrompuequicontrôlesencoredes secteurs entiers de l'économie,estiméRichmaoui,qui dirige la section“Etat de droit”du HCR。