2013-09-10 2 views
0

Я пытаюсь сопоставить одну строку с адресом электронной почты с помощью регулярного выражения. Образец по электронной почте выглядит так:Регулярное совпадение строки между двумя символами по электронной почте

[email protected] 

И я хотел бы получить раздел «someid». Значение Мне нужно совместить все до «@» и после последнего периода.

Я могу сопоставить все перед «@» с (^[^@]+), однако я не могу эффективно объединить его в выражении регулярного выражения для оценки только после последнего периода (я могу получить его только после первого периода).

Любые указатели были бы замечательными, спасибо!

ответ

1
/\.([^[email protected]]+)@/ 

Без использования lookarounds, это совпадает со всем, что это не @ или ., который приходит после . и перед @.

+1

ИМХО в этом случае было бы лучше. – Broxzier

+0

Почему? ИМХО Я нахожу их сложными. –

+0

Потому что это требует, чтобы вы дважды писали '@'. – Broxzier

Смежные вопросы