LINUX.ORG.RU

Ещё один вопрос по sed

 


0

1

Спасибо, ЛОР, теперь я ковыряюсь в регулярных выражениях с некоторыми проблесками понимания. Но глупые вопросы остаются, например:

Как в одну строку вставить другую после с определённого по счёту символа (слова), подробнее:

Есть строка1 - 'bla blabla blablabla',

есть строка2 - '_vstavka_',

есть номер - например, 2.

Как получить (в случае символа) 'bl_vstavka_a blabla blablabla',

и, в случае слова - 'bla blabla_vstavka_blablabla'?

Спасибо за внимание.

★★★★★

'qwerty qwerty qwerty' | sed -rn 's/^(.{2})(.*)/\1_vstavka_\2/p'
'qwerty qwerty qwerty' | sed -rn 's/^((\S+\s){2})(.*)/\1_vstavka_ \2/p'
TGZ ★★★★
()
Ответ на: комментарий от TGZ

Во второй строке только \2 нужно заменить на \3, чтобы правильно работало

'qwerty qwerty vovan' | sed -rn 's/^((\S+\s){2})(.*)/\1_vstavka_ \3/p'

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