Чем удалить кусок строки
Правила форума
Убедительная просьба юзать теги [code] при оформлении листингов.
Сообщения не оформленные должным образом имеют все шансы быть незамеченными.
Убедительная просьба юзать теги [code] при оформлении листингов.
Сообщения не оформленные должным образом имеют все шансы быть незамеченными.
- kharkov_max
- капитан
- Сообщения: 1862
- Зарегистрирован: 2008-10-03 14:56:40
Чем удалить кусок строки
День добрый.
Есть файлик в нем строки с текстом )))
Нужно из строки удалить все что находится между символами "(бла бла бла )" в том числе и сами символы ().
Как это сделать
Спасибо.
Есть файлик в нем строки с текстом )))
Нужно из строки удалить все что находится между символами "(бла бла бла )" в том числе и сами символы ().
Как это сделать
Спасибо.
Услуги хостинговой компании Host-Food.ru
Тарифы на хостинг в России, от 12 рублей: https://www.host-food.ru/tariffs/hosting/
Тарифы на виртуальные сервера (VPS/VDS/KVM) в РФ, от 189 руб.: https://www.host-food.ru/tariffs/virtualny-server-vps/
Выделенные сервера, Россия, Москва, от 2000 рублей (HP Proliant G5, Intel Xeon E5430 (2.66GHz, Quad-Core, 12Mb), 8Gb RAM, 2x300Gb SAS HDD, P400i, 512Mb, BBU):
https://www.host-food.ru/tariffs/vydelennyi-server-ds/
Недорогие домены в популярных зонах: https://www.host-food.ru/domains/
Тарифы на виртуальные сервера (VPS/VDS/KVM) в РФ, от 189 руб.: https://www.host-food.ru/tariffs/virtualny-server-vps/
Выделенные сервера, Россия, Москва, от 2000 рублей (HP Proliant G5, Intel Xeon E5430 (2.66GHz, Quad-Core, 12Mb), 8Gb RAM, 2x300Gb SAS HDD, P400i, 512Mb, BBU):
https://www.host-food.ru/tariffs/vydelennyi-server-ds/
Недорогие домены в популярных зонах: https://www.host-food.ru/domains/
- kharkov_max
- капитан
- Сообщения: 1862
- Зарегистрирован: 2008-10-03 14:56:40
Re: Чем удалить кусок строки
Нашел
cat ./file | sed 's|(.*)||' > ./new_file
Следующий вопрос.
В строках встречается такое
(бла бла) (бла бла)
В выше указаном варианте sed удаляет все, а нужно что б удалял только первое совпадение.
awk не подойдет т.к. не во всех строках есть такие повторения ...
Как через sed закрутить ?
cat ./file | sed 's|(.*)||' > ./new_file
Следующий вопрос.
В строках встречается такое
(бла бла) (бла бла)
В выше указаном варианте sed удаляет все, а нужно что б удалял только первое совпадение.
awk не подойдет т.к. не во всех строках есть такие повторения ...
Как через sed закрутить ?
- kharkov_max
- капитан
- Сообщения: 1862
- Зарегистрирован: 2008-10-03 14:56:40
Re: Чем удалить кусок строки
Вообщем sed как то нужно указать что между () должны быть буквы или цифры а не символы ().
-
- лейтенант
- Сообщения: 613
- Зарегистрирован: 2009-08-05 16:10:46
- Откуда: Украина Днепропетровск-Киев
- Контактная информация:
Re: Чем удалить кусок строки
Удалить нужно только первое вхождение в каждой строке файла или первое вхождение по всем файле?
Либо я туго под вечер соображаю, либо условие какое-то неточное.
Либо я туго под вечер соображаю, либо условие какое-то неточное.
Нет, ребята, я не гордый. Не загадывая вдаль, так скажу: зачем мне орден? Я согласен на медаль.
- kharkov_max
- капитан
- Сообщения: 1862
- Зарегистрирован: 2008-10-03 14:56:40
Re: Чем удалить кусок строки
К примеруkpp писал(а):Удалить нужно только первое вхождение в каждой строке файла или первое вхождение по всем файле?
Либо я туго под вечер соображаю, либо условие какое-то неточное.
Код: Выделить всё
#Kode qwertyu fhfhfgh etet 4 erwrwr
12345 (qwerty) sfsfwegdgdg
#Kode qwertyu fhfhfgh etet 4 erwrwr gdgertetertg
234567 (qwerty) etetete (poiuyrre)
Код: Выделить всё
#Kode qwertyu fhfhfgh etet 4 erwrwr
12345 sfsfwegdgdg
#Kode qwertyu fhfhfgh etet 4 erwrwr gdgertetertg
234567 etetete (poiuyrre)
Код: Выделить всё
#Kode qwertyu fhfhfgh etet 4 erwrwr
12345 sfsfwegdgdg
#Kode qwertyu fhfhfgh etet 4 erwrwr gdgertetertg
234567
-
- лейтенант
- Сообщения: 613
- Зарегистрирован: 2009-08-05 16:10:46
- Откуда: Украина Днепропетровск-Киев
- Контактная информация:
Re: Чем удалить кусок строки
Код: Выделить всё
sed 's/(.[^(]*)//' ./file > ./new_file
Замечу, что
Код: Выделить всё
cat ./file
Нет, ребята, я не гордый. Не загадывая вдаль, так скажу: зачем мне орден? Я согласен на медаль.
- kharkov_max
- капитан
- Сообщения: 1862
- Зарегистрирован: 2008-10-03 14:56:40
Re: Чем удалить кусок строки
Ну так почему то не отработало, но направление понятно - ответ найду.
cat - учел
Спасибо.
cat - учел
Спасибо.
-
- лейтенант
- Сообщения: 613
- Зарегистрирован: 2009-08-05 16:10:46
- Откуда: Украина Днепропетровск-Киев
- Контактная информация:
Re: Чем удалить кусок строки
С Вашим примером у меня на выходе:
Вроде как и заказывали.
Код: Выделить всё
#Kode qwertyu fhfhfgh etet 4 erwrwr
12345 sfsfwegdgdg
#Kode qwertyu fhfhfgh etet 4 erwrwr gdgertetertg
234567 etetete (poiuyrre)
Нет, ребята, я не гордый. Не загадывая вдаль, так скажу: зачем мне орден? Я согласен на медаль.
- kharkov_max
- капитан
- Сообщения: 1862
- Зарегистрирован: 2008-10-03 14:56:40
Re: Чем удалить кусок строки
Еще может быть так:kpp писал(а):С Вашим примером у меня на выходе:Вроде как и заказывали.Код: Выделить всё
#Kode qwertyu fhfhfgh etet 4 erwrwr 12345 sfsfwegdgdg #Kode qwertyu fhfhfgh etet 4 erwrwr gdgertetertg 234567 etetete (poiuyrre)
Код: Выделить всё
#Kode qwertyu fhfhfgh etet 4 erwrwr
12345 (qwerty)sfsfwegdgdg
#Kode qwertyu fhfhfgh etet 4 erwrwr gdgertetertg
234567 (qwerty)etetete (poiuyrre)
Ваш пример не удаляет первые скобки и содержимое между ними ((.
-
- лейтенант
- Сообщения: 613
- Зарегистрирован: 2009-08-05 16:10:46
- Откуда: Украина Днепропетровск-Киев
- Контактная информация:
Re: Чем удалить кусок строки
В результате измененного примера на выходе у меня :
Ничего подозрительного не наблюдаю.
Код: Выделить всё
#Kode qwertyu fhfhfgh etet 4 erwrwr
12345 sfsfwegdgdg
#Kode qwertyu fhfhfgh etet 4 erwrwr gdgertetertg
234567 etetete (poiuyrre)
Нет, ребята, я не гордый. Не загадывая вдаль, так скажу: зачем мне орден? Я согласен на медаль.
-
- проходил мимо
Чем удалить кусок строки
Код: Выделить всё
sed 's/([^)]*) *//' ./text
Последний раз редактировалось Alex Keda 2015-02-23 14:33:21, всего редактировалось 1 раз.
Причина: Товарищщи, цените чужое время, юзайте кнопочку [code]...
Причина: Товарищщи, цените чужое время, юзайте кнопочку [code]...