在正则表达式匹配下面的行上添加文本

时间:2013-09-19 18:22:02

标签: regex notepad++

我正在尝试在包含单词“Letters”的每行下面添加“[value = xxx]”的文本,并在包含单词“Letters”的行中附加一个逗号,我想在正则表达式中使用Notepad ++可以工作,但我无法弄明白。此外,匹配不是经常间隔的(即,并不像在每第3行添加“[value = xxx]”那么简单。)

我目前看起来像:

Properties = "_2nastlsgb",
     Letters = "#,S"
textline2
textline3
Properties = "_1,N",
     Letters = "A"

我希望最终结果如下:

Properties = "_2nastlsgb",
     Letters = "#,S",
     [value = xxx]
textline2
textline3
Properties = "_1,N",
     Letters = "A",
     [value = xxx]

我真的很接近以下但它最终只是有点关闭: 找到什么:字母(。*) 替换为:\ 1,\ n \ t \ t \ t \ t [值= ###]

结果:

 Properties = "_2nastlsgb",
         s = "#,S",
                [Value = ###]
    textline2
    textline3
    Properties = "_1,N",
         s = "A",
                [Value = ###]

任何帮助都将不胜感激。

1 个答案:

答案 0 :(得分:2)

尝试使用:

^(.*?)(Letters.*)

并替换为:

$1$2,\n$1[Value = ###]

此正则表达式将采用Letters的缩进并将其应用于Value

你的正则表达式的问题在于它正在替换letter而不是将其放回去,因此只有s