我有一个相当大的XML文档,其中包含多个属性。所有属性当前都具有“String”的值,因为它是没有实际数据的示例文件。所以文件看起来像这样:
<Message>
target="String"
type="String"
date="String"
etc. etc.
>
有没有办法用“=”之前出现的属性名替换“String”的每个实例?所以每个属性都是这样的:
<Message>
target="target"
type="type"
date="date"
etc. etc.
>
这是否可以在Notepad ++中使用正则表达式?还是用别的东西?谢谢你的帮助。
答案 0 :(得分:0)
在Notepad ++中使用正则表达式替换。将查找内容设置为\b(\w+)="String"
,将替换为设置为\1="\1"
。您可能需要调整单词String
的大小写以及匹配大小写复选框的设置。
解释。 \b
匹配单词和非单词之间的边界。 (\w+)
匹配一个或多个单词字符并将其保存在捕获字段中。 ="String"
匹配自己。在替换中,\1
插入已保存的捕获字段;它会与其他想要的字符一起插入两次。
如果以上内容替换了文件中过多的项目,请尝试搜索^_(\w+)="String"$
并替换为_\1="\1";
注意_
应替换为两个字符串中的单个空格,这里是为了清楚地显示应放置空间的位置。以上说明适用,但查找内容一开始的^
与行的开头匹配,$
匹配行的末尾。