我有一個結構(例如groups> subgroups>子記錄)的xml響應,並用不同的值重複數千次。使用記事本++從xml中提取特定數據
我想只抓取其9位序列號字段匹配我提供的子組,並將它們提取到它自己的文件中。當提取子組時,它也會帶來該組。我希望這樣的任務可以使用記事本++和可能通過使用正則表達式,但不知道我將如何去做這件事。
我有一個結構(例如groups> subgroups>子記錄)的xml響應,並用不同的值重複數千次。使用記事本++從xml中提取特定數據
我想只抓取其9位序列號字段匹配我提供的子組,並將它們提取到它自己的文件中。當提取子組時,它也會帶來該組。我希望這樣的任務可以使用記事本++和可能通過使用正則表達式,但不知道我將如何去做這件事。
我並不熟悉notepad ++。對於我的解決方案來說,它需要支持多行正則表達式和高級正則表達式語法(非貪婪匹配)。並非所有支持正則表達式的文本編輯器都可以。
我會以外部標記開始和結束,您希望\<subgroup\>\<\/subgroup\>
轉義特殊字符。爲了捕捉介於兩者之間的內容,我將使用非貪婪匹配\<subgroup\>\.*?<\/subgroup\>
。然後我會添加您感興趣的具體序列號\<subgroup\>\.*?123456789.*?<\/subgroup\>
。
如果你想找到一些多個序列號的位置使用類似
\<subgroup\>\.*?(123456789|987654321|678912345).*?<\/subgroup\>
在我的情況下,涉及多個序列號,我在想如果可能以某種方式在記事本++的逗號分隔類型列表中添加這些列表以提取列表中序列號的組。 – bman2013 2013-02-19 20:35:55
編輯我的答案,包括找到序列號列表 – 2013-02-19 23:08:32
號使用XML解析器和XPath。記事本++與正則表達式不是這項任務的正確工具。 – Bergi 2013-02-19 16:01:07