【发布时间】:2015-04-30 10:12:12
【问题描述】:
我需要解析一个 XML 文件。我需要取时间码(开头和结尾)和与这个时间相关的句子。
XML 文件是这样的:
<?xml version="1.0" encoding="ISO-8859-1"?>
<!DOCTYPE Trans SYSTEM "trans-14.dtd">
<Trans scribe="jj" audio_filename="01" version="1" version_date="150211">
<Episode>
<Section type="report" startTime="0" endTime="50.28281021118164">
<Turn startTime="0" endTime="50.28281021118164">
<Sync time="0"/>
<Sync time="1.195"/>
Something
<Sync time="2.654"/>
Something 2
<Sync time="4.356"/>
Something 3
<Sync time="9.321"/>
Something 4
<Sync time="22.171"/>
Something 5
<Sync time="28.351"/>
Something 6
<Sync time="35.708"/>
Something 7
<Sync time="43.04"/>
Something 8
</Turn>
</Section>
</Episode>
而我需要得到这个最终结果:
0 1.195
1.195 2.654 Something
2.654 4.356 Something 2
4.356 9.321 Something 3
9.321 22.171 Something 4
22.171 28.351 Something 5
28.351 35.708 Something 6
35.708 43.04 Something 7
43.04 "endTime" Something 8
我正在使用 Ubuntu,有什么建议吗?用 bash 可以做到这一点吗?
谢谢!
【问题讨论】:
-
@Serv 这个副本的问题是它似乎实际上是在建议你自己编写一个解析器,我个人认为这是一个糟糕的主意。
-
我同意汤姆的意见,链接为重复的答案因其新颖性而非质量而被高度评价。这实际上是一个非常糟糕的答案。