Главная страница


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)
 
 

Вернуться к списку тем, сортированных по: возрастание даты  уменьшение даты  тема  автор 

 Тема:    Автор:    Дата:  
 Серьезная проблемка с регэкспом   Alexander Kravchenko   27 Aug 2005 17:38:16 
 Серьезная проблемка с регэкспом   Ivan Frolkov   27 Aug 2005 18:48:44 
 Re: Серьезная проблемка с регэкспом   Alexander Kravchenko   30 Aug 2005 14:39:30 
 Re: Серьезная проблемка с регэкспом   Alexander Kravchenko   16 Sep 2005 23:46:33 
 Re: Серьезная проблемка с регэкспом   Konstantin Tokar   17 Sep 2005 01:08:39 
Архивное /ru.perl/8428e6c98924.html, оценка 2 из 5, голосов 10
Яндекс.Метрика
Valid HTML 4.01 Transitional