使用Perl替换语句(s //)我想通过在某些项目中添加属性来修改某些XML(如果缺少).这是一个例子:
...
<car color="red" owner="john">...</car>
<car color="green" age="3">...</car>
...
Run Code Online (Sandbox Code Playgroud)
假设我想为无车的车添加默认车主.我尝试了以下但没有成功:
s/(<car[^>]*)(?!owner="[^"]*")(.*>)|$1 owner="steve"$2/iUg
Run Code Online (Sandbox Code Playgroud)
任何帮助赞赏.
虽然您可以使用正则表达式,但始终建议使用XML解析器.
Perl/CPAN产品包括:
将您的XML文档视为Perl数据结构
老朋友
对于SAX解析需求
用于以块为单位的XML文档的内存高效处理
我个人的最爱