正则表达式查找并替换一行中的多个匹配项

时间:2016-05-02 17:44:23

标签: regex

我正在尝试使用正则表达式查找和替换我的IDE的功能来修改我的一段代码。代码目前如下所示:

//some-code
myvar = ['var1','var2','var3']
//some-more-code
myvar = ['othervar1','othervar2']

变量 myvar 有几个赋值语句作为字符串列表。我想将这些字符串列表转换为字典;键等于字符串,值等于' my' +字符串。以下是更换后的样子。

//some-codes
myvar = {'var1':'myvar1','var2':'myvar2','var3':'myvar3']
//some-more-codes
myvar = {'othervar1':'myothervar1','othervar2':'myothervar2'}

我正在努力正确匹配列表中的各个字符串(这样我就可以用$ 0替换它们:我的$ 0)。请记住,我只想替换分配给 myvar 的字符串列表。所有其他字符串列表应保持不变。我尝试使用lookahead (?=myvar =)(.*)'([a-z_]*)',但它只匹配列表中的最后一个变量。如果我使匹配延迟(?=myvar =)(.*?)'([a-z_]*)',它只匹配列表中的第一个变量。

请帮助。

1 个答案:

答案 0 :(得分:1)

如果您的IDE支持<password>myP&ssword</password> 特殊选项,则可以使用

\G

Regex demo