LINUX.ORG.RU

Возможна ли замена подстроки в шаблоне с помощью sed?


0

1

Т.е. если есть допустим шаблон описываемый регулярным выражением: ",[0-9][0-9]qwerty[0-9][0-9][0-9]," возможно ли заменить(удалить) qwerty на например asdf.

Входная строка: «asd,45xcv789,fwer,45qwerty789,qweragsdfsdf» Результат: «asd,45xcv789,fwer,45asdf789,qweragsdfsdf»

Если да, то каким образом?

Да.
Что вы пытались сделать?

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

Ему надо, чтобы «12qwerty789 2qwerty» превратилась в «12asdf789 2qwerty».

Kotolegokot
()

Нужно больше примеров. Пока то, что ты описал, — это стандартное поведение sed.

$ echo asd,45xcv789,fwer,45qwerty789,qweragsdfsdf | sed 's/qwerty/asdf/'
asd,45xcv789,fwer,45asdf789,qweragsdfsdf
Или развернуть/переформулировать вопрос.

justAmoment ★★★★★
()
Последнее исправление: justAmoment (всего исправлений: 1)
Ответ на: комментарий от anonymous

Наверное, да. Это самый правильный вариант.

P.S. Можно и так извернуться

$ echo "asd,45xcv789,fwer,45qwerty789,qweragsdfsdf" | sed 's/\(,[[:digit:]]\{2\}\)qwerty\([[:digit:]]\{3\},\)/\1___asdf___\2/'
asd,45xcv789,fwer,45___asdf___789,qweragsdfsdf

justAmoment ★★★★★
()
Ответ на: sed от mumpster

Забанить всех регистрантов и сделать тут анонимную имиджборду. Качество ресурса возрастёт в разы, анонимус гарантирует.

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

Забанить всех регистрантов

но-но! я жобэ на вас пожалуюсь!

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

Так можно ж проще сделать. Для всех анонимусов убрать показ имён регистрантов. И им будет казаться, что все вокруг анонимусы.

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