08:53

Совершенству эволюция не нужна.
[ok]

Задача такая:
Есть документ html с таблицей, в таблице отдельным столбцом проставлены номера строк. Приходится некоторые строки удалять из-за несоответствия.. не суть важно чего и чему. Смысл в том, что удалив строки, мы получаем неправильную нумерацию в соответствующем столбце, некоторые номера выпадают после удаления строк.
Есть ли возможность скриптом bash пройтись по документу, найти там строчки кода, описывающие ячейки таблицы с номерами строк, и переписать нумерацию по типу i +1 на каждой новой найденной строчке? Т.е. восстановить правильную нумерацию строк таблицы.
Или проще написать скрипт на php? Я бы предпочел работать через bash, подскажите, каким методом там можно реализовать решение, если вообще возможно.

@темы: Программирование

Комментарии
08.06.2009 в 08:57

Крайне злопамятное хамло ;)
Я подобные задачи решаю в экселе)
08.06.2009 в 09:00

Совершенству эволюция не нужна.
Co0L
Эксель переписывает у меня html на свой лад, в результате чего получается избыточный документ, который весит много, а код потом править гораздо
сложнее) Есть там возможность пересохранить документ в html, чтобы его код не изменился?)
08.06.2009 в 09:23

Крайне злопамятное хамло ;)
Есть там возможность пересохранить документ в html, чтобы его код не изменился?)
Вряд ли)) Просто я использую это обычно для баз данных, а там есть импорт экселя) А для адекватоного кода приходится использовать Ctrl+C в экселе и Ctrl+V в дримвивере или FCKEditor(можно не ставить, с этим отлично справляется онлайн демка)
08.06.2009 в 09:32

Совершенству эволюция не нужна.
Ну это выход. Но мне по прежнему хочется все заделать скриптом, так как строки удаляет у меня тоже скрипт. Сразу уж все действия забить в один скрипт-файл и каждый раз запускать его на документе, получая на выходе сразу нужный результат.
08.06.2009 в 11:01

вообще если делать по уму, то такая таблица должна генерироваться динамически

но можно и скриптом обработать html, конечно; можно в виме; много как можно
08.06.2009 в 11:30

немного непойму почему не сделать вывод таблицы скриптом а данные держать в базе или файле. при этом скриптом сделать проставление номеров строк и проблема отпадет сама собой. да и выкидывать строки легче намного и ненадо каждый раз руками в код лазить.
08.06.2009 в 11:39

Совершенству эволюция не нужна.
Таблица, к сожалению, генерируется не мною и я не имею доступа к ее генератору. Мне приходит готовая, с которой нужно удалить строки и поменять нумерацию.
Можно сколько угодно говорить о том, что в оригинале можно сразу ее создавать так, как нужно, но этого не получится, 100% :) Так тчо приходится искать иной вариант.

Ладно, давайте подумаем, если кому интересно. Я обычно пользуюсь редактором sed. Я могу задать ему, чтобы он находил строки кода, где прописан номер строки. Но как заставить его заменить номер на i + 1? Нужна какая-то переменная, которая после каждой новой строки увеличивалась бы на единицу, а затем ее значение sed вставлял бы на место предыдущего номера. Есть возможность такое провернуть?
08.06.2009 в 12:45

Совершенству эволюция не нужна.
Один человек помог, решил вопрос через python, так что задача снимается :)

Кому интересно, вот код его скрипта:



Здесь между и и находится нужный мне номер, так что найти строки с ним не составляет труда. Далее скрипт заменяет его на real - рекурсивную переменную.
08.06.2009 в 16:17

The day that you stop running is the day that you arrive.
HTML с таблицей можно открыть в Excel.
09.06.2009 в 12:14

neo_rage, писали уже ответ —
Эксель переписывает у меня html на свой лад, в результате чего получается избыточный документ, который весит много, а код потом править гораздо сложнее