2017-02-20 59 views
0

我有一個很大的XML文檔 - 下面是一個簡短的例子來說明格式。我想要做的就是找到這不是一個標籤內的文檔中的所有文本,並刪除它 - 所以我只剩下一個數據列表...XML查找並刪除指定標記內的文檔中的所有文本

因此,這裏是原:

51.639973121-2.161205923 
112.0 
<time>2017-02-19T11:26:45Z</time> 

51.639902964-2.161258059 
111.6 
<time>2017-02-19T11:26:46Z</time> 

51.639834484-2.161310529 
111.6 
<time>2017-02-19T11:26:47Z</time> 

51.639765501-2.161366101 
111.6 
<time>2017-02-19T11:26:48Z</time> 

51.639697859-2.161426451 
111.8 
<time>2017-02-19T11:26:49Z</time> 

而且一旦格式化 - 它會成爲:

<time>2017-02-19T11:26:45Z</time> 
<time>2017-02-19T11:26:46Z</time> 
<time>2017-02-19T11:26:47Z</time> 
<time>2017-02-19T11:26:48Z</time> 
<time>2017-02-19T11:26:49Z</time> 

這怎麼可能???

+1

正則表達式是不解析XML的方式,如果你做它在PHP如果你的文件特別大,你可以使用XMLReader類(不需要加載整個文件一次,並且不需要構建DOM樹)。 –

+0

它的脫機文件 - 可以用任何誠實的東西打開/編輯... – dubbs

+0

必須通過正則表達式來實現嗎?^[#;]。*接近我需要的表情? – dubbs

回答

1

以下表達式將選擇所有文字,但時間標籤:

^(?!<time>[^<]+<\/time>).*\R 

它的工作原理只有在標籤上一個新的生產線,就像你輸入例。

See the demo

+0

謝謝 - 在您演示中的作品是 - 不是在Dreamweaver中查找工具,但是...我如何使用Regex來完成這項工作? – dubbs

+0

同樣想要一個刪除命令,一旦它找到所有沒有的東西

+0

使用https://regex101.com如何刪除'找到'選擇? – dubbs

相關問題