Notepad ++批量搜索并将字符串替换为同一行中的另一个字符串

时间:2014-04-23 13:48:14

标签: regex replace notepad++ bulk

我有一个文件,里面装满了一堆如下所示的变量声明:

//comment line
STR_first_string = "This is the first message to be shown.";
STR_another_message = "Second message here";
STR_string_message_three = "And the third one.";
STR_notification_number_four = "Bla bla yadder yadder";

//another comment line
...

不介意后续命名。这只是为了表明变量名称都是不同的,除了开头STR_

现在,我想在文件的每一行添加一些内容,以便它看起来像这样:

//comment line
STR_first_string = "This is the first message to be shown."; publicVariable "STR_first_string";
STR_another_message = "Second message here"; publicVariable "STR_another_message";
STR_string_message_three = "And the third one."; publicVariable "STR_string_message_three";
STR_notification_number_four = "Bla bla yadder yadder"; publicVariable "STR_notification_number_four";

//another comment line
...

我告诉自己如何在Notepad ++中使用RegEx。基本上,我打算用;替换终止publicVariable ",然后用一些花哨的正则表达式替换。但我没有找到符合这一特定问题的东西。如果有人可以提供帮助我真的很开心!

此致 Stacky

2 个答案:

答案 0 :(得分:1)

听起来你只想替换:

(STR_\S+)\s*=\s*".*";

...与:

\0 publicVariable "\1";

答案 1 :(得分:1)

您可以尝试替换

((STR_\S+)\s*=\s*"([^"]|\\")*";)

\1 publicVariable "\2";

\1代表整个正则表达式匹配的部分,\2表示由(STR_\S+)匹配的部分。