PHP.SU

Программирование на PHP, MySQL и другие веб-технологии
PHP.SU Портал     На главную страницу форума Главная     Помощь Помощь     Поиск Поиск     Поиск Яндекс Поиск Яндекс     Вакансии  Пользователи Пользователи

Страниц (594): В начало « ... 586 587 588 589 590 591 [592] 593 594 »

> Найдено сообщений: 8901
EuGen Отправлено: 29 Июня, 2007 - 10:44:26 • Тема: "Anti" REGEXP или сравнение 2-х регулярных выражений • Форум: Регулярные выражения

Ответов: 24
Просмотров: 1181
Цитата:
Слаба богу. Можете меня поздравить. Наконец то я понял что к чему.

Видимо, настолько идиотская постановка задачи была, извиняюсь
Да, в данном конкретном случае работать будет, а что, если у меня есть скажем, регулярное выражение ^[12][0123456789]{4}$ или что то вроде ^[pр]ri[vw][eе]t |^привет |^здрав |^zdr[aа]v.... как тут быть?..
Тут уже точно не написать функцию которая может преобразовать входную строку в нужную регулярку...
P.S. "T.REG" обозначалось поле таблицы T, хранящее шаблоны-рег. выражения
EuGen Отправлено: 28 Июня, 2007 - 16:52:09 • Тема: ICQ бот • Форум: FreeLance

Ответов: 5
Просмотров: 3102
ЖеНик пишет:
EuGen
Бот выдает ошибки, где можно прочитать подробную настройку?

Документация лежит на том же сайте, откуда бота качал. А вообще - у бота этот писан каким-то челом, который наверняка присутствует в описании проги. Вот у него и спроси если еще останутся вопросы после прочтения документации.
Я сам этого бота не юзал.
EuGen Отправлено: 28 Июня, 2007 - 14:58:16 • Тема: "Anti" REGEXP или сравнение 2-х регулярных выражений • Форум: Регулярные выражения

Ответов: 24
Просмотров: 1181
Да я тоже так думал, но оказалось, что нельзя изменять уже существующие шаблоны.
Да и, если честно, я не очень понял как это поможет по вводу скажем st показывать поисковиком пресловутое выражение для "стан" ...
EuGen Отправлено: 28 Июня, 2007 - 13:53:49 • Тема: Что быстрее? • Форум: SQL и Архитектура БД

Ответов: 8
Просмотров: 107
В первом случае интерпретатор будет вынужден сделать вызов list но зато во втором выбираются все поля из таблицы без каких-либо условий! Это значит, что если таблица скажем пару миллионов строк и содержит один-два атрибута типа text или blob, такой код сильно увеличит нагрузку на сервер БД.
Так что с этой точки зрения, конечно же, 1-й вариант предпочтительнее.
EuGen Отправлено: 28 Июня, 2007 - 12:46:00 • Тема: "Anti" REGEXP или сравнение 2-х регулярных выражений • Форум: Регулярные выражения

Ответов: 24
Просмотров: 1181
Цитата:
Для поиска в полне подойду регулярки, а для второго придётся использовать чтото другое.

Наверное, это "что то" и предстоит построить.
Я правильно понял, Вы предлагаете поисковику делать так: REGEXP не по T.REG а по f(T.REG), где f - возвращает T.REG с отрезанными ^ и $ (если таковые имеются на концах),
А обработчику - по оригинальному значению T.REG ... ?
EuGen Отправлено: 28 Июня, 2007 - 10:35:41 • Тема: ICQ бот • Форум: FreeLance

Ответов: 5
Просмотров: 3102
http://www[dot]intrigue[dot]ru/workshop/php2icq[dot]html
это класс для отправки и приема сообщений ICQ прямо из PHP; документация там же и есть несколько версий.
EuGen Отправлено: 28 Июня, 2007 - 10:17:17 • Тема: "Anti" REGEXP или сравнение 2-х регулярных выражений • Форум: Регулярные выражения

Ответов: 24
Просмотров: 1181
Что же, пробую еще раз, менее отвлекаясь уже на описание среды где это используется (потому что в первом описании, по моему, о ней уже все сказано)
Итак, предположим у нас в таблице базы (обзову ее тогда "T") есть записи с некоторыми регулярным выражениями (обзовем поле, в котором хранятся наши регулярки, как T.REG)
Пользователь желает узнать, можно ли в базу добавлять строку S0. Для этого он делает запрос к скрипту-поисковику. Тот, в свою очередь, делает запрос
SELECT * FROM T WHERE S0 REGEXP T.REG
И по логике получает, что, если S0 не подпадает ни под одно имеющееся в T.REG выражение, то S0 можно добавить в T, где S0 уже будет считаться регулярным выражением.
Далее, скрипт обработчик должен по входной строке S1 найти единственную запись в T, которой соответствует S1. Делает он это так:
SELECT * FROM T WHERE S1 REGEXP T.REG
Соответственно, он находит запись в T, поле T.REG которой есть регулярное выражение, под которое подпадает S1.
А теперь представим себе такую ситуацию:
-на момент добавления S0 в T существовала запись, T.REG которой соответствует некоторой строке S2, причем S0 есть подстрока S2.
-Обработчик начнет искать в T указанным запросом строку S2. Тогда, так как S2 REGEXP (T.REG, соответствующее S2) есть истина, и S2 REGEXP S0 есть истина, мы получим не 1, а 2 записи, то есть крах системы.
Собственно, задача состоит в том, чтобы такого не допустить и как то обрабатывать описанные ситуации, причем делать это по логике надо еще на стадии поисковика, то есть не давать юзеру вводить S0, если есть T.REG такое, что для него существует S2 и S0 есть подстрока S2.
Вообще говоря, мне кажется, что случай с подстроками не единственный возможный случай коллизии.
EuGen Отправлено: 28 Июня, 2007 - 09:57:18 • Тема: "Anti" REGEXP или сравнение 2-х регулярных выражений • Форум: Регулярные выражения

Ответов: 24
Просмотров: 1181
Хорошо, быть может, у Вас и получится решить эту задачу и Вы сможете мне помочь, я бы очень хотел, чтобы получилось!
EuGen Отправлено: 28 Июня, 2007 - 09:54:41 • Тема: Извлечение прикрепленных файлов из письма • Форум: Пользовательские функции

Ответов: 4
Просмотров: 672
Теперь функция decode_mime:
PHP:
скопировать код в буфер обмена
  1.  
  2. <?
  3. function decode_mime($mime, $default_cs='koi8-r')
  4. {
  5.         $fulltext='';
  6.         $arr=imap_mime_header_decode($mime);
  7.         foreach ($arr as $chunk)
  8.         {
  9.                 $cs=strtolower($chunk->charset);
  10.                 if ($cs=='default')
  11.                         $cs=$default_cs;
  12.                 $text=$chunk->text;
  13.                 $text=iconv($cs, 'UTF-8', $text);
  14.                 $fulltext.=$text;
  15.         }
  16.         return $fulltext;
  17. }
  18. ?>
  19.  
EuGen Отправлено: 28 Июня, 2007 - 09:42:19 • Тема: "Anti" REGEXP или сравнение 2-х регулярных выражений • Форум: Регулярные выражения

Ответов: 24
Просмотров: 1181
Наверное, нужно было еще подробнее расписывать, но я не придумал как это лучше изложить, прошу прощения.
Предложенное решение спасает только на случай приведенного примера, но регулярное выражение, вообще говоря, может быть произвольным и тогда либо становится невозможным написание функции, которая из строки делает ее регулярное выражение, так как входной строке могут соответствовать несколько регулярных выражений (в общем случае бесконечное множество)
Создавая эту тему, я не предполагал, если честно, что мне будет предложено хоть что то, так как задача и вправду нетривиальная, так что все хорошо - спасибо, как говорится, и на том!
EuGen Отправлено: 28 Июня, 2007 - 09:12:00 • Тема: "Anti" REGEXP или сравнение 2-х регулярных выражений • Форум: Регулярные выражения

Ответов: 24
Просмотров: 1181
Спасибо, но проблема тут в том, что как мне решить, когда поисковику искать через LIKE, а когда - через REGEXP .. (сейчас все шаблоны считаются регулярными выражениями, то есть поиск всегда через REGEXP идет).
EuGen Отправлено: 27 Июня, 2007 - 18:41:53 • Тема: CRON • Форум: Администрирование Windows

Ответов: 4
Просмотров: 3698
http://ru[dot]handyarchive[dot]com/downl[dot][dot][dot]/nncronlt116[dot]exe
тут лежит демон крон, "портированный" в windows
EuGen Отправлено: 27 Июня, 2007 - 18:36:46 • Тема: Системы контроля версий • Форум: Прочее

Ответов: 10
Просмотров: 110
CVS .. если это конечно можно назвать системой контроля версий.. скорее всего она все таки таковой не является..
EuGen Отправлено: 27 Июня, 2007 - 18:33:17 • Тема: В какие игры играете в свободное время? • Форум: Прочее

Ответов: 22
Просмотров: 227
Condition Zero (* из жанра action ....
Neverwinter Nights из жанра RPG.... (*
EuGen Отправлено: 27 Июня, 2007 - 18:29:57 • Тема: Бродилка • Форум: Прочее

Ответов: 12
Просмотров: 140
FireFox вполне устраивает (* ... очень забавное он выдает при переходе на about:Mozilla (*

Страниц (594): В начало « ... 586 587 588 589 590 591 [592] 593 594 »
Powered by PHP  Powered By MySQL  Powered by Nginx  Valid CSS  RSS

 
Powered by ExBB FM 1.0 RC1. InvisionExBB