多行查找(grapping)并使用perl替换XML文件中的文本

时间:2013-04-16 15:06:16

标签: regex perl

在这里,我尝试使用perl正则表达式在一个XML文件中查找和替换文本内容。

示例XML代码:

<root>
<add>
<st>xxxx</st>
<pin>xxx</pin>
</add>
</root>

现在我想查找/ grep从<add></add>的文字并替换<xyz> xxx </xyz>

<add>
<st>xxxx</st>
<pin>xxx</pin>
</add>

注意:

如果上面的内容是单行,我的意思是<add></add>之间没有换行符,因为<add><st>xxxx</st><pin>xxx</pin></add>我可以使用<add>(.*)<\/add>来查找/ grep。

<小时/> 感谢你

Thirusanguraja V

1 个答案:

答案 0 :(得分:0)

使用XML::XSH2XML::LibXML的包装:

open input.xml ;
$add = /root/add ;
delete $add/* ;
insert element xyz into $add ;
insert text 'xxx' into $add/xyz ;
save :b ;