sed удалить диапазон текста, SemGromoff, 31-Авг-15, 19:57 [смотреть все]есть html файл видаblabla </div><table class= blablabla </table> blablabla мне нужно удалить текст от начала и до тега </div><table class= и после тега </table> сами теги не нужно удалять, но поскольку весь файл представляет собой одну строку :(,то конструкция вида sed '1,/<\/div><table/d; /<\/table>/,$d ' удаляет всё содержимое файла как сделать правильно?
|
- sed удалить диапазон текста, Pahanivo, 12:14 , 01-Сен-15 (1)
> есть html файл вида > blabla > </div><table class= > blablabla > </table> > blablabla > мне нужно удалить текст от начала и до тега </div><table class= и от начала чего? в файле нет открывающих тегов? > после тега </table> > сами теги не нужно удалять, > но поскольку весь файл представляет собой одну строку :(,то конструкция вида любой файл по сути представляет собой одну большую "строку" > sed '1,/<\/div><table/d; /<\/table>/,$d ' > удаляет всё содержимое файла очевидно что просишь, то и делает. > как сделать правильно?
- sed удалить диапазон текста, pavlinux, 03:43 , 02-Сен-15 (6)
> как сделать правильно?1. sed -e '/table/!d' 2. sed -e '/<\//!d' 3. sed -e '/^</!d' оно же grep
- sed удалить диапазон текста, SemGromoff, 11:20 , 02-Сен-15 (7)
>> как сделать правильно? > 1. sed -e '/table/!d' > 2. sed -e '/<\//!d' > 3. sed -e '/^</!d' > оно же grep что-то у меня ничего толком не получилось вашим способом вот пример, текстовый файл в одну строчку blablablabla </div><table class="11"><tr><th class="num"></tr>blablablabla</div>blablablabla</div></div></form></td><td class="RightPanel"><div class="IndexTest"><h2>blablablablablablablabla<a href="/test/">тест</a></h2>blablablablablablablablablablablabla</table> blablablablablablablablablabla blablablablablablablablablablablablablabla от него должно остаться только </div><table class="11"><tr><th class="num"> </tr>blabla blabla</div>blablablabla </div></div></form></td>< td class="RightPanel"><div class="IndexTest"><h2>blablablabla blablablabla<a href="/test/">тест</a></h2>blablablablablablablablablablablabla</table> в принципе, задачу я уже решил при помощи ворда и макроса,а вот используя sed в линуксе никак. хочу на будущее сделать скрипт, поскольку таких файлов много и включать каждый раз виртуалку неудобно.
- sed удалить диапазон текста, Andrey Mitrofanov, 12:24 , 02-Сен-15 (8)
>[оверквотинг удален] >> оно же grep > что-то у меня ничего толком не получилось вашим способом > вот пример, текстовый файл в одну строчку > blablablabla </div><table class="11"><tr><th class="num"></tr>blablablabla</div>blablablabla</div></div></form></td><td > class="RightPanel"><div class="IndexTest"><h2>blablablablablablablabla<a href="/test/">тест</a></h2>blablablablablablablablablablablabla</table> > blablablablablablablablablabla blablablablablablablablablablablablablabla > от него должно остаться только > </div><table class="11"><tr><th class="num"> </tr>blabla blabla</div>blablablabla > </div></div></form></td>< td class="RightPanel"><div class="IndexTest"><h2>blablablabla > blablablabla<a href="/test/">тест</a></h2>blablablablablablablablablablablabla</table> |sed -n 's|</div><table class=|\n&|g;H;${g;s/^\n//;s/^[^\n]*\n//;s/\n//g;p}' > в принципе, задачу я уже решил при помощи ворда и макроса,а вот > используя sed в линуксе никак. хочу на будущее сделать скрипт, поскольку > таких файлов много и включать каждый раз виртуалку неудобно.
- sed удалить диапазон текста, Andrey Mitrofanov, 12:36 , 02-Сен-15 (9)
> |sed -n 's|</div><table class=|\n&|g;H;${g;s/^\n//;s/^[^\n]*\n//;s/\n//g;p}' Поторопился избавиться-от/запостить этот ужос, забыл заметить: 1/ у меня GNU sed и "\n" (и м.б. что-то ещё) может не работать в других реализациях 2/ в исходных данных обещали не давать новых строк -- не проверял вход, и удалял из выхода 3/ один s/// лишний
- sed удалить диапазон текста, pavlinux, 16:40 , 02-Сен-15 (10)
>>> как сделать правильно? >> 1. sed -e '/table/!d' >> 2. sed -e '/<\//!d' >> 3. sed -e '/^</!d' >> оно же grep > что-то у меня ничего толком не получилось вашим способом > вот пример, текстовый файл в одну строчку В задании было > есть html файл вида > blabla > </div><table class= > blablabla > </table> > blablabla
$ cat html | sed -e '/table/!d' </div><table class= </table>
|