在记事本中使用正则表达式在第二个冒号之后擦除

时间:2019-03-19 19:51:03

标签: regex notepad++

你好!

我很抱歉以前是否曾问过这个问题,但是我花了一些时间搜索以前的帖子,但是我找不到这个似乎无法弄清楚的简单问题的答案。

使用Notepad ++和Regex的replace函数,我试图将示例字符串变成这样:

原始文本

州:明尼苏达州:数据

所需的输出

州:明尼苏达州

我以为我只需在“查找”中使用:。* 即可找到答案,而将Replace留为空白,但是无论出于何种原因,正则表达式对我来说一直都是一个难题。

提前谢谢!

1 个答案:

答案 0 :(得分:0)

使用以下正则表达式:

^(.*?:.*?):.*

或者

^([^:\r\n]*:[^:\r\n]*):.*

并替换为$1

详细信息

  • ^-匹配一行的开头
  • (.*?:.*?)-捕获到组1中:除换行符以外的任何0个或多个字符,然后减一个冒号,然后除换行符之外的任意0个或多个字符,然后尽可能少({{ {1}}匹配除冒号,LF和CR字符以外的任何字符)
  • [^:\r\n]-冒号
  • :-该行的其余部分。

截屏: enter image description here