![]() |
Модераторы: korob2001, ginnie |
![]() ![]() ![]() |
|
solarmyth |
|
||||||
Новичок Профиль Группа: Участник Сообщений: 2 Регистрация: 17.3.2011 Репутация: нет Всего: нет |
Здравствуйте.
В течение долгого времени я пытался обрабатывать html-файлы при помощи языка awk. Потратив год времени и написав 400строчный код (не отличающийся особой читаемостью) я начал переходить на perl, пойдя светлой дорогой тов. Уолла. В процессе перехода обнаружилось, что awk-овые привычки к реализации программ остаются, но в perl не работают, а учебник Рендела и Шварца не даёт советов по моей вымученной ситуации. Суть проблемы следующая - я пытаюсь последовательно запустить две функции, дабы работать с возвращаемыми ими массивами. Первая функция:
Вторая функция
Т.е. первая функция выдаёт массив с номерами параграфов, а вторая вырезает нужные мне строчки. По отдельности обе функции работают, в режиме perl perl_script.pl Verbs.html Однако, по awk-шному образцу запустить их просто написав
не получается, т.к. программа, по всей видимости, уходит в бесконечный цикл и её приходится выключать Ctrl-C. Если одну из функций не запускать то всё работает. В связи с этим вопрос - как можно запустить несколько функций подряд? Или сама реализация методом "запусти эту, эту и эту функцию, а потом сделай с результатами то-то" неверна и еретична? Буду благодарен за советы и подсказки. |
||||||
|
|||||||
arto |
|
|||
Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1495 Регистрация: 31.10.2004 Репутация: 38 Всего: 40 |
первой функцией вы выэитываете весь входной поток.
либо читайте в промежуточный массив и его обрабатывайте функциями, либо совместите всю обработку в одной. Добавлено через 1 минуту и 7 секунд ну и, естественно, проще использовать какой-либо парсер хтмля |
|||
|
||||
solarmyth |
|
|||
Новичок Профиль Группа: Участник Сообщений: 2 Регистрация: 17.3.2011 Репутация: нет Всего: нет |
arto, большое Вам спасибо!
Вопрос решён. З.Ы. В переписанном коде функций должно быть значительно больше, и основную проблему представляют не теги html (хотя и они несколько хаотичны в обрабатываемом документа), а нерегулярности в описаниях на русском языке. Но perl-парсеры html я поищу. ![]() |
|||
|
||||
![]() ![]() ![]() |
Правила форума "Perl" | |
|
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, korob2001, sharq. |
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | Perl: Общие вопросы | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |