информационная безопасность
без паники и всерьез
 подробно о проектеRambler's Top100
Атака на InternetСтрашный баг в WindowsSpanning Tree Protocol: недокументированное применение
BugTraq.Ru
Русский BugTraq
 Анализ криптографических сетевых... 
 Модель надежности двухузлового... 
 Специальные марковские модели надежности... 
 Очередное исследование 19 миллиардов... 
 Оптимизация ввода-вывода как инструмент... 
 Зловреды выбирают Lisp и Delphi 
главная обзор RSN блог библиотека закон бред форум dnet о проекте
bugtraq.ru / форум / programming
Имя Пароль
если вы видите этот текст, отключите в настройках форума использование JavaScript
ФОРУМ
все доски
FAQ
IRC
новые сообщения
site updates
guestbook
beginners
sysadmin
programming
operating systems
theory
web building
software
hardware
networking
law
hacking
gadgets
job
dnet
humor
miscellaneous
scrap
регистрация





Легенда:
  новое сообщение
  закрытая нитка
  новое сообщение
  в закрытой нитке
  старое сообщение
[Perl] Помогите плиз с регексами 21.01.06 15:40  
Автор: Cyber_Onix Статус: Незарегистрированный пользователь
<"чистая" ссылка>
Всем привет
Помогите плиз с регексами:
Есть строка вида
[user@mail.ru]-[0.85589599609375]-[1830319.21337891].dat
(все что идет после "[почта]-" может быть различным, например может быть различное кол-во следующих за ним рандомных цифр
Нужен регекс который бы однозначно выдирал только электронный адрес, и ничего более...
Такая конструкция:

if($file_name =~ /\[(.*\@.*\.\w+){1}\]-.i) {
$email = $1;
print "$email\n";
}

Почему то не хочет адекватно работать
Хелп плиз, надо срочно :(
Не работает наверн из-за "жадности" *. попробуйте... 20.06.06 15:31  
Автор: AL_M Статус: Незарегистрированный пользователь
<"чистая" ссылка>
> Всем привет
> Помогите плиз с регексами:
> Есть строка вида
> [user@mail.ru]-[0.85589599609375]-[1830319.21337891].dat
> (все что идет после "[почта]-" может быть различным,
> например может быть различное кол-во следующих за ним
> рандомных цифр
> Нужен регекс который бы однозначно выдирал только
> электронный адрес, и ничего более...
> Такая конструкция:
>
> if($file_name =~ /\[(.*\@.*\.\w+){1}\]-.i) {
> $email = $1;
> print "$email\n";
> }
>
> Почему то не хочет адекватно работать
> Хелп плиз, надо срочно :(

Не работает наверн из-за "жадности" *. попробуйте \[[a-z]+@[a-z]+(\.[a-z]+)*\]
Вот посмотрите полный регэксп для мыла -... 19.06.06 09:18  
Автор: Nick Spring Статус: Незарегистрированный пользователь
<"чистая" ссылка>
> Всем привет
> Помогите плиз с регексами:
> Есть строка вида
> [user@mail.ru]-[0.85589599609375]-[1830319.21337891].dat
> (все что идет после "[почта]-" может быть различным,
> например может быть различное кол-во следующих за ним
> рандомных цифр
> Нужен регекс который бы однозначно выдирал только
> электронный адрес, и ничего более...
> Такая конструкция:
>
> if($file_name =~ /\[(.*\@.*\.\w+){1}\]-.i) {
> $email = $1;
> print "$email\n";
> }
>
> Почему то не хочет адекватно работать
> Хелп плиз, надо срочно :(

Вот посмотрите полный регэксп для мыла - http://www.pcre.ru/examples/links/text/21/
пример правда на PHP, но шаблон то тот же.
Не совсем хороший регэксп 19.06.06 09:34  
Автор: Heller <Heller> Статус: Elderman
Отредактировано 19.06.06 09:35  Количество правок: 1
<"чистая" ссылка>
> Вот посмотрите полный регэксп для мыла -
> http://www.pcre.ru/examples/links/text/21/
> пример правда на PHP, но шаблон то тот же.

/* скопирую сюда для удобства */

$is_ok = preg_match('/^[\.\-_A-Za-z0-9]+?@[\.\-_A-Za-z0-9]+?\.[\
.\-_A-Za-z0-9]{2,6}$/', $text);

Пример e-mail'а, удовлетворяющего ему:

-@-.666666

Это самое невинное, что можно придумать. Так же непонятно обилие ограничителей жадности "?" (забыл правильное название).

Помню, я поднимал здесь уже эту тему с более детальным регэкспом:
http://bugtraq.ru/cgi-bin/forum.mcgi?type=sb&b=8&m=124515. Там, единственное, нужно подправить часть, ответственную за домен верхнего уровня:
[A-Za-z]{2,4}
заменить на
([A-Za-z]{2,4}|museum)

Однако все равно не понятно каким образом это относится к сабжу.
Re 22.01.06 01:06  
Автор: Heller <Heller> Статус: Elderman
<"чистая" ссылка>
> [user@mail.ru]-[0.85589599609375]-[1830319.21337891].dat
$string=~/^\[(.+?)\]/;
В переменной $1 после этого окажется е-мэил.
:) А я решил не искать легких путей: 22.01.06 01:32  
Автор: Cyber_Onix Статус: Незарегистрированный пользователь
<"чистая" ссылка>
> >
> [user@mail.ru]-[0.85589599609375]-[1830319.21337891].dat
> $string=~/^\[(.+?)\]/;
> В переменной $1 после этого окажется е-мэил.

:) А я решил не искать легких путей:
/([\w+\-\.]+\@[\w\-\.]+\.\w{2,3})(.*)/
посмотри на смежную тему 21.06.06 19:25  
Автор: kstati <Евгений Борисов> Статус: Elderman
Отредактировано 21.06.06 19:27  Количество правок: 1
<"чистая" ссылка>
pcre
************************************test for RFC822 &; RFC1738 email syntax
++ only visibled chars used
++ ip as host not allowed */
/^[^][\0-\x20()<>@,;:\\".\x80-\xff](?:[^][\0-\x20()<>@,;:\\"\x80-\xff]*?[^][\0-\x20()<>@,;:\\".\x80-\xff]@(?:(?:(?:[a-zA-Z0-9](?:[-a-zA-Z0-9]*[-a-zA-Z0-9])?)\.)?:[a-zA-Z](?:[-a-zA-Z0-9]*[a-zA-Z])?))$/

---

Оптимизация PCRE, фильтрующих URL
1




Rambler's Top100
Рейтинг@Mail.ru


  Copyright © 2001-2025 Dmitry Leonov   Page build time: 0 s   Design: Vadim Derkach