我搜索了许多问答,但找不到足够具体的解决方案来提供帮助。
我有一个大的 xml 文件,需要根据另一个字段中的值在一个字段中进行有条件的“删除”。
例如:
<vehicle>...<manufacturer>JCB</manufacturer>....<item_category>JCB Tractors</item_category>...</vehicle><vehicle>...<manufacturer>Caterpillar</manufacturer>....<item_category>Digger</item_category>...</vehicle><vehicle>...<manufacturer>Caterpillar</manufacturer>....<item_category>Caterpillar Digger</item_category>...</vehicle>
需要成为
<vehicle>...<manufacturer>JCB</manufacturer>...<item_category>Tractors</item_category>...</vehicle><vehicle>...<manufacturer>Caterpillar</manufacturer>...<item_category>Digger</item_category>...</vehicle><vehicle>...<manufacturer>Caterpillar</manufacturer>....<item_category>Digger</item_category>...</vehicle>
理想情况下,我可以使用设置为 POSIX 扩展正则表达式的 textpad 中的查找和替换功能来应用该解决方案。
非常感谢对此的帮助,因为我已经用头撞了一段时间了!
如果我使用解析器,我可以隔离我想要“删除”的变量字符串
(?<=<manufacturer>)(.*?)(?=<\/manufacturer>)
是否可以使用该模式来隔离我实际要删除的字符串
例如,
(?<=<item_category>)(?<=<manufacturer>)(.*?)(?=<\/manufacturer>)(\s)