информационная безопасность
без паники и всерьез
 подробно о проектеRambler's Top100
Сетевые кракеры и правда о деле ЛевинаВсе любят мед
BugTraq.Ru
Русский BugTraq
 Анализ криптографических сетевых... 
 Модель надежности двухузлового... 
 Специальные марковские модели надежности... 
 Бэкдор в xz/liblzma, предназначенный... 
 Три миллиона электронных замков... 
 Doom на газонокосилках 
главная обзор RSN блог библиотека закон бред форум dnet о проекте
bugtraq.ru / форум / programming
Имя Пароль
ФОРУМ
если вы видите этот текст, отключите в настройках форума использование JavaScript
регистрация





Легенда:
  новое сообщение
  закрытая нитка
  новое сообщение
  в закрытой нитке
  старое сообщение
  • Напоминаю, что масса вопросов по функционированию форума снимается после прочтения его описания.
  • Новичкам также крайне полезно ознакомиться с данным документом.
Не работает наверн из-за "жадности" *. попробуйте... 20.06.06 15:31  Число просмотров: 2107
Автор: 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]+)*\]
<programming>
[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-2024 Dmitry Leonov   Page build time: 0 s   Design: Vadim Derkach