RegEx for simple pattern

时间:2015-09-03 14:20:00

标签: regex notepad++

我有一个包含以下行的日志文件:

....
unit:
...
unit.integration:
....

我想使用notepad ++在文件上运行RegEx搜索,它返回所有行:以没有空格的单词开头并以:\ n结束。我试过了:

(.:\n)

但是得到0结果。我看过: http://www.aivosto.com/vbtips/regex.html

编辑:更新了对起始单词的更具体要求。

2 个答案:

答案 0 :(得分:2)

  

我想运行一个RegEx搜索...返回所有以:\n结尾的行开头。

匹配的第一部分是:,因为您正在寻找换行符,所以您希望匹配该行的结尾,即$

你说你不关心它之前的内容,所以不要把它包含在正则表达式中:

:$

更新地址编辑:

  

我想运行一个RegEx搜索...返回所有行:以没有空格的单词开头,以:\n结尾。

这与您的原始帖子不同,现在您想匹配一个没有空格"的单词,但这意味着它是一个单词,并且不包含特殊字符。

在我看来,您希望匹配unit.integration,这是两个单词和分隔.字符。

如果你想要你所要求的("一个没有空格的单词"),那么只需将^\w+添加到正则表达式中:

^\w+:$

(匹配unit:,但不匹配unit.integration:

如果您希望匹配不包含空格并以:结尾的行,那么您应该使用^\S+代替:

^\S+$

(匹配unit:unit.integration:,但也匹配@#*()$&*(&:

细节很重要,因此请避免假设,并尽可能明确地说明您想要匹配的内容。

答案 1 :(得分:1)

要获取所有没有空格且以:结尾的行,请使用

^\S+:\R

\S仅匹配非空白符号,\R表示任何换行符。

见截图:

enter image description here

如果您打算匹配最后一行,请将\R替换为$(行尾或整个文件元字符)。

enter image description here