LINUX.ORG.RU

[vim / sed / awk] убрать из строк все, кроме pattern'a


0

1

Добрый день.

Подскажите, пожалуйста, как можно из строки убрать все, кроме некоторого pattern'a.

Пример:

Intel Celeron D 315, 2278 MHz (17 x 134)

преобразовать в

2278 MHz

(regexp получается «\d\+ MHz»).

В идеале — хочется понять, как это делать в vim'е, но sed'ом и awk я тоже не брезгую.

★★★★★

Ответ на: комментарий от arsi

grep -o

Гениально, благодарю Вас!

Harliff ★★★★★
() автор топика

хочется понять, как это делать в vim'е

:s/\(^.* \)\(\d\+ MHz\)\(.*$\)/\2/g                           

Так, например. Это грубовато, но я не силён в RE.

GotF ★★★★★
()
Ответ на: комментарий от GotF

>:s/\(^.* \)\(\d\+ MHz\)\(.*$\)/\2/g

Шикарно, спасибо.

Harliff ★★★★★
() автор топика
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.