在记事本++中只保留每行的第一个单词

时间:2017-01-04 02:19:17

标签: regex notepad++

例如我有:

hello I am ...
For the reason ...
Not sure if ...

我想保留helloFor以及Not并删除记事本++中每一行的其余内容。

4 个答案:

答案 0 :(得分:2)

<强>查找

^([^\s]*)\s.*$

<强>替换

\1

<强>解释

^          start of line
([^\s]*)  match and capture every non whitespace character up until
\s         the first whitespace character
.*         consume remainder of line until reaching the
$          end of line

答案 1 :(得分:1)

CTRL + H,使用Perl Regex,替换

^(\w+)\s.*$

$1

答案 2 :(得分:1)

将搜索/替换设置为正则表达式模式,然后搜索

^(\w+).*(在每行的开头捕获尽可能多的单词字符)

并用

替换ALL

$1(捕获的单词)

另外,请确保&#34;。匹配换行符&#34;关闭

答案 3 :(得分:1)

根据您的要求,有不同的解决方案:

  • 如果单词只是字母字符
    • 找到:^([a-zA-Z]+).*$
    • 替换为:$1
  • 如果您想匹配任何语言的字母:
    • 找到:^(\p{L}+).*$
    • 替换为:$1
  • 如果一个单词是任何&#34;单词字符&#34;即。 [a-zA-Z0-9_]
    • 找到:^(\w+).*$
    • 替换为:$1
  • 如果一个单词是任何非空白字符:
    • 找到:^(\S+).*$
    • 替换为:$1

确保Regular expression is checked但不是. matches newline

然后点击全部替换