|
ru.perl- RU.PERL ---------------------------------------------------------------------- From : Alexander Kravchenko 2:5020/400 30 Aug 2005 14:39:30 To : Ivan Frolkov Subject : Re: Серьезная проблемка с регэкспом -------------------------------------------------------------------------------- "Ivan Frolkov" <lala@mail.ge> сообщил/сообщила в новостях следующее: news:3290387253@p2.f175.n5020.z2.ftn... > Sat Aug 27 2005 17:38, Alexander Kravchenko wrote to All: > > AK> sub serviceRegExp { > > AK> eval('while (1) { > AK> $_[0] =~ s'.$_[1].' || last; > AK> }'); > > Гениально. Если у нас что-то подставилось, то выскакиваем из цикла. Если > же > ничего не подставилось - попробуем до посинения еще раз то же самое. > Действительно - а вдруг? > Hемножко не так. s///, насколько помню (даже проверять не буду), возвращает количество успешных поисков/замен, так что здесь все в порядке. Вопрос не в этом. Я конечно плохо изьясняюсь, но попытаюсь сформулировать еще раз. 1. Все прекрасно работает через интерпретатор. Так что с регэкспом и eval все нормально. 2. Когда производится работа посредством исполняемого файла, изготовленного PDK-ом происходит вываливание с кодом ошибки 65280. Hо только при обработке достаточно большого файла. Меньшие же файлы приложение в состоянии обработать. Так что и здесь с регэкспом все нормально. В чем проблема? ---------------------------------- Может ли быть проблема в следующем: 1. Поскольку используется конструкция типа eval('while (regExpr) {}'); может ли Perl сам посчитать, что приложение ушло в бесконечный цикл (регулярное выражение достаточно сложное и работает довольно ощутимое время), и на основании этого прекратить работу приложения? Тогда как это обойти? 2. Или все же проблема в исполняемом файле, изготавливаемом PDK? Или в чем-то другом проблема? В любом случае какое может быть решение или обходные пути. Я даже согласен пойти на увеличение времени работы приложения. Все равно работать будет компьютер. ---------------------------------------------- И еще разок напомню предыдущий вопрос Поставил ActivePerl-5.8.7.813 Теперь во всех приложениях на Tk все русские надписи выглядят кракозябрами (или как их там). Если кто сталкивался с подобной проблемой, скажите как привести это безобразие в порядок > > Чует мое сердце, что-то ты странное хочешь... Может, не надо? > Очень даже надо. Это экономит мне каждую неделю 5-6 часов здоровья --- ifmail v.2.15dev5.3 * Origin: Digital Generation (2:5020/400) Вернуться к списку тем, сортированных по: возрастание даты уменьшение даты тема автор
Архивное /ru.perl/8428e6c98924.html, оценка из 5, голосов 10
|