URL: https://www.opennet.ru/cgi-bin/openforum/vsluhboard.cgi
Форум: vsluhforumID9
Нить номер: 4813
[ Назад ]

Исходное сообщение
"regexp"

Отправлено bsdlamer , 04-Ноя-05 20:04 
привет всем.
плиз подскажите

есть например строка

asdasd asda ssadadas asdasd 234234 email=user@host.dom alskdja 08938

нужно регулярное вырожение чтоб вытащить именно только user@host.dom


Содержание

Сообщения в этом обсуждении
"regexp"
Отправлено Niam , 04-Ноя-05 22:01 
>привет всем.
>плиз подскажите
>
>есть например строка
>
>asdasd asda ssadadas asdasd 234234 email=user@host.dom alskdja 08938
>
>нужно регулярное вырожение чтоб вытащить именно только user@host.dom


.*email=([^ ]*) .*
должно сработать. а какой библиотекой ты пользуешся?? возможно прийдется пролбелы в выражении заменить на спец-символы (\s)


"regexp"
Отправлено ACCA , 05-Ноя-05 15:56 
>.*email=([^ ]*) .*
>должно сработать. а какой библиотекой ты пользуешся?? возможно прийдется пролбелы в выражении
>заменить на спец-символы (\s)

В адресе должен быть хотя бы один @ и хотя бы одна точка:

/\semail=([^\s]+\@[^\s]+\.[^\s]+)\s/


"regexp"
Отправлено chip , 11-Дек-05 17:56 

>В адресе должен быть хотя бы один @ и хотя бы одна
>точка:
>
>/\semail=([^\s]+\@[^\s]+\.[^\s]+)\s/

Собственно интересно откуда . (точка стала _обязательной_)? Следующей адрес получается не валидным:

root@localhost


"regexp"
Отправлено madskull , 04-Ноя-05 22:02 
>привет всем.
>плиз подскажите
>
>есть например строка
>
>asdasd asda ssadadas asdasd 234234 email=user@host.dom alskdja 08938
>
>нужно регулярное вырожение чтоб вытащить именно только user@host.dom

/(\w+@\w+\.\w+)/


"regexp"
Отправлено volod , 06-Ноя-05 17:00 
>/(\w+@\w+\.\w+)/
webmaster@club.foto.ru уже не пройдет :) да и в имени может быть все, что угодно.

/email=(\S+)\s/

а дальше разбираться с $1 на предмет чего туда попало. халявы не будет :)