Notepad ++ Regex在某些行之间插入行

时间:2014-08-22 14:44:36

标签: regex string notepad++

我在Notepad ++中尝试过这个,但我并不完全确定它是否可能存在。我有一个iCal文件,我需要插入一些缺少的"管理器"领域。例如,我需要

DTSTAMP:20140821T160519Z
UID:ExampleUID1

是这个

DTSTAMP:20140821T160519Z
ORGANIZER;CN=Test:mailto:me@example.com
UID:ExampleUID1

组织者在某些情况下存在,并且是静态值。如何在保持DTSTAMP字符串完整的同时执行此操作?查找DTSTAMP:[A-Za-z0-9 _] * $ \ r \ n \ nNID:找到条目,但我找不到要替换的内容。使用

DTSTAMP:^([A-Za-z0-9_])*$\r\nORGANIZER;CN=Test:mailto:me@example.com\r\nUID:

或其任何变体将实际正则表达式文本(^ [A-Za-z0-9 _] * $。)注入结果。

2 个答案:

答案 0 :(得分:2)

替换此模式:

^(DTSTAMP:.+)$

使用此替换字符串:

\1\r\nORGANIZER;CN=Test:mailto:me@example.com

您必须检查正则表达式模式(显然),然后取消选中。匹配换行选项。

对于某些额外的安全性,您还可以使用此模式:

^(DTSTAMP:.+)$(?!\r\nORGANIZER)

如果ORGANIZER字段位于DTSTAMP字段下方,则不会插入\r\n字段。

此外,如果您的iCal文件采用UNIX换行格式,请将每个\n替换为{{1}}。

答案 1 :(得分:1)

您可以使用此正则表达式:

(DTSTAMP.*)

<强> Working demo

检查替换部分:

enter image description here