我有一个文件input.txt
,其中包含许多奇怪的字符,html标签和有用的资料。我希望在单词description
之后显示35个字符,不包括奇怪的字符,如$$#$#@$#@***$#
,并且在新文件output.txt中没有html标签。帮我。
提前完成。
我的最终目标是在描述之后找到单词描述并打印35个字符,其中不应包含html标签和奇怪的字符。可能吗?像这里:
<description><p><img class="float_right"
src="http://static3.businessinsider.com/image/502ab0036bb3f7147b00000f-400-300/dnu.jpg"
border="0" alt="dnu" width="400" height="300" /></p><p>The lawn
was filled with <a class="hidden_link"
href="http://www.businessinsider.com/blackboard/goldman-sachs">Goldman
Sachs</a> Group Inc. partners dressed in pink looking out on a pink sunset.
我想从以下开始:The lawn is filled with
(再次跳过这些标记并继续)Group Inc. partners
(35个字符。完毕!)然后停止并搜索其他说明!
答案 0 :(得分:1)
您可以使用XPath选择HTML节点中的所有文本。在你的情况下,这应该工作:
xpath -q -e '//description//text()' input.txt
查询//description//text()
的工作原理如下:
//description
:向下钻取HTML文档,直到找到名为description
//text()
:在此节点内向下钻取所有其他节点并选择其文本根据您输出的数据:
The lawn was filled with
Goldman Sachs
Group Inc. partners dressed in pink looking out on a pink sunset.