RegEx - 如何删除Notepad ++行中第三个空格之前的所有内容?

时间:2013-06-08 22:57:19

标签: regex notepad++

我无法找出正确的正则表达式公式来删除Notepad ++行中第三个空白空格之前的所有字符。我的文字读到:

kea k3fi ifea1k monkey
k22a kfea.f fkaa99 parrot
23 ma feaj bear

我希望操作文本,因此它会读取:


鹦鹉

有没有人有想法?任何帮助将非常感激。谢谢!

修改>>问题解决了。感谢大家的帮助!我希望我和你们一样聪明,哈哈。干杯!

5 个答案:

答案 0 :(得分:9)

使用:

^(.*? ){3}

“替换为:” nothing 保持一致。这将转向:

kea k3fi ifea1k monkey
k22a kfea.f fkaa99 parrot
23 ma feaj bear

分为:

monkey
parrot
bear



另一方面,如果你的文件是:

kea k3fi ifea1k monkey monkey monkey monkey monkey
k22a kfea.f fkaa99 parrot parrot parrot parrot parrot
23 ma feaj bear bear bear bear bear

上面的正则表达式太简单了。你必须使用正则表达式:

^((.*? ){3})(.*?)$

“替换为:” $3一起保留。

这会将上面的文件转换为:

monkey monkey monkey monkey monkey
parrot parrot parrot parrot parrot
bear bear bear bear bear

答案 1 :(得分:1)

另一种方法是替换:

^([^ ]* ){3} 

或:

^[^ ]* [^ ]* [^ ]*  

使用空字符串

答案 2 :(得分:1)

你的正则表达式是:

^([^ ]+ ){3}

从三个没有间隔的单词开始三次。

答案 3 :(得分:0)

你可以这样做:

find: ^([^ ]+ ){3}(.+)$
replace: $2

并推送replaceAll!

答案 4 :(得分:0)

如果您还要处理表格或其他空格字符

find:    ^(\S+\s+){3}
replace: "nothing"

\s代表任何空格字符
\S代表非空格字符