gedit:搜索并替换为正则表达式


21

我想用gedit代替它:

 1299465 |  2003415 | 2015-09-06 05:35:34.59662+02
 1299449 |  2009400 | 2015-09-06 05:35:32.301683+02
 1299450 |  2008465 | 2015-09-06 05:35:32.451393+02
 1299457 |  2015211 | 2015-09-06 05:35:33.451049+02

对此:

2003415
2009400
2008465
2015211

我该如何使用gedit?

背景:我想用gedit而不是sed / python / ....来做,因为替换需要交互完成。


因此,您想剥离外部区域吗?
奥利(Oli)

@Oli是的,我想删除第一列和第三列
guettli 2015年

Answers:


47

在标准的替换框(Control+ H)中,您可以使用一些分组的正则表达式来处理此问题:

  • 搜索: .*\| (.*) \|.*
  • 用。。。来代替: \1
  • 选中具有“匹配为正则表达式”的框

这是Gedit 3.10.4(Ubuntu 14.04中的默认版本)。


无法与其他插件一起使用
AlexGreg 2015年

@AlexGreg ??gedit据我所知,这只股票的价格为14.04。我已经裸体了~/.config/gedit,它仍然有效。
奥利(Oli)

好..不是我的情况。.怪异
AlexGreg 2015年

1
@AlexGreg它的工作原理,你必须勾选“正则表达式”复选框强硬
科斯

3
听起来您正在使用旧版本的Ubuntu @AlexGreg。甚至12.04 Precise(受支持的最旧版本的Ubuntu)也使用3.4.1
奥利(Oli)

4

您可以使用高级查找插件进行gedit。

这里安装插件。

关于如何实现的gedit插件的说明(如果你不知道它的话)是这里

然后,使用Oli的答案从问题中删除所需的数字。


如果您运行的是Mint,则可能会使用旧版本的gedit,这是最好的答案。
mcarans
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.