gedit: пошук і заміна регулярними виразами


22

Я хочу замінити це на 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 так, я хочу зняти перший і третій стовпчик
guettli

Відповіді:


48

Зі стандартного поля Замінити ( Control+ H) ви можете використовувати трохи згрупований регулярний вираз, щоб впоратися з цим:

  • Шукати: .*\| (.*) \|.*
  • Замінити: \1
  • Поставте прапорець "Збіг як регулярний вираз"

Це в Gedit 3.10.4, версії за замовчуванням в Ubuntu 14.04.


не працює без жодних інших плагінів
AlexGreg

@AlexGreg Так? geditНаскільки я можу сказати, це запас на 14.04. Я занудився, ~/.config/geditі він все ще працює.
Олі

ну..не мій випадок..дивно
AlexGreg

1
@AlexGreg Це працює, вам потрібно встановити прапорець "Регулярний вираз"
kos

3
Здається, ви використовуєте старовинну версію Ubuntu, @AlexGreg. Навіть 12.04 Точна - найстаріша підтримувана версія Ubuntu - використовує 3.4.1 .
Олі

4

Ви можете використовувати плагін Advanced-find для gedit.

Встановіть плагін звідси .

Інструкції (якщо ви цього ще не знаєте) про те, як реалізувати плагін gedit, є тут

Потім скористайтеся відповіддю Олі, щоб викреслити номери, які ви хочете від свого запитання.


Якщо ви використовуєте Mint, у вас, швидше за все, є стара версія gedit, і тоді це найкраща відповідь.
mcarans
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.