我需要替换XML
文件中的以下行:
hashName="'Miecz Nieb. Wojownika+5IMiecz Nieb. Wojownika+5" name="Miecz Nieb. Wojownika+5"
由于上述行不正确,我希望将其替换为:
hashName="'Miecz Nieb. Wojownika+5'" name="Miecz Nieb. Wojownika+5"
(应该从name =“”attr获取项目名称。)。
这是我目前得到的,它没有按预期工作,因为它删除了我的name="..."
属性。
搜索:
hashName="(')(.*)"(.)name="(.*)"(.)/
替换为:
hashName="'\4'" name="\4"
答案 0 :(得分:1)
这应该有效
Search for: hashName=\".+\" name=\"(.+)\"
Replace with: hashName="'\1'" name="\1"
答案 1 :(得分:1)
对于这个简单的例子,这是有用的
搜索
hashName="[^"]*"\s*name="([^"]*)"
并替换为
hashName="'\1'" name="\1"
如果您不想捕获或分组字符,请不要在其周围放置括号,因此我删除了大部分字符。
为了避免太多匹配,例如如果你在一行中有两个“名称”属性,我使用[^"]*
进行非贪婪匹配。