2015-03-21 3 views
1

я в настоящее время с помощью электронной почты экстрактор, который работает хорошо, но я хотел бы изменить его структуру, которая является:Email Extractor Java шаблон за исключением символов перед точкой

[^a-zA-Z0-9-](?<num>[a-zA-Z0-9_-]{2,20}@[A-Za-z0-9_-]{3,20}\.[\.a-zA-Z0-9_-]+)[^a-zA-Z0-9_-] 

Проблема с этой модели является то, что ему исключает все символы перед точкой.

Например, если он находит письмо, как «[email protected]», он сообщит «[email protected]»

Я не знаю, что я должен написать в шаблоне, чтобы он больше не исключал символов перед точкой.

Если у кого-то есть идея, пожалуйста, дайте мне знать ... большое спасибо!

ответ

1

Ваше регулярное выражение не кажется правильным, попробуйте это регулярное выражение:

\b(?<num>[a-zA-Z0-9][\w.-]{2,20}@[\w-]{3,20}\.[.\w-]+)\b 

RegEx Demo

+0

Его регулярное выражение имеет каретку ('' ^) в этом первом классе символов. Твой нет. Я предпочитаю ваш '\ b', но тогда вы должны избавиться от всего этого класса символов. Сейчас он пропускает первую букву любого адреса электронной почты. –

+1

Спасибо, я уточнил его дальше. См. Обновленный. – anubhava

+1

Большое спасибо, я просто попробовал, он работает очень хорошо! – Lola1234

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

  • Нет связанных вопросов^_^