所以我有一个脚本,其中的行由回车符分隔。有时作者会搞砸,将注释(包含在 [[]] 中的文本)放在行的中间或开头,而注释应该放在行的末尾。由于这不统一,我很难找到一种方法来将这些注释自动移动到 Notepad++ 中它们出现的行的末尾,无论是通过宏还是一些花哨的正则表达式查找和替换。
简单地说,我想要一种自动化的方法:
hello [[emphasis]] my friends!
[[laugh]] how are you?
到:
hello my friends! [[emphasis]]
how are you? [[laugh]]
答案1
这可以在代替对话:
- 查找内容 =
(?-s)(\[\[.*\]\])[\h]*(.*?)[\h]*$
- 替换为 =
$2 $1
- 搜索模式 = 正则表达式
基本上,我会搜索[[...]]
并将其放入$1
,然后将其后的所有内容放入$2
。然后它会替换这两个,以使$2
位于 之后$1
。我做了一些额外的事情,例如确保它忽略. matches newlines
,这样它就.*
不会换行
仅供参考:如果您有进一步的搜索和替换(“匹配”,“标记”,“书签”,正则表达式,“正则表达式”)需求,请研究Notepad++ 社区的常见问题解答以及它指向的文档。它将帮助您在 Notepad++ 中使用正则表达式,并帮助您了解我编写的正则表达式的细节。