Как написать регулярное выражение для электронной почты, которое найдет начало и с пробелом, нет ли какого-либо электронного письма?

1

Я застрял с проблемой. Я пытаюсь найти электронные письма из строки. Мне нужно регулярное выражение, которое будет находить электронную почту в начале и в середине с пространством. например, он должен обнаружить [email protected] и <space>[email protected]. здесь, в середине строки, электронная почта должна начинаться с пробела. Я пытаюсь с regexp ниже, но он не работает.

([a-zA-Z0-9._+-]+@[a-zA-Z0-9._-]+\.[a-zA-Z0-9._-]+)

Теги:

3 ответа

0

Положим ([-.+\w ]+)@([-\w]+)\.(\w+), вы можете получить имя пользователя и домен в результате.

0

Это довольно глупое доказательство.

(([^<>()\[\]\\.,;:\s@"]+(\.[^<>()\[\]\\.,;:\s@"]+)*)|(".+"))@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\])|(([a-zA-Z\-0-9]+\.)+[a-zA-Z]{2,}))

см. тест здесь... https://regex101.com/r/M8WmoV/1

var stringThing = '[email protected] everyone, I stuck with a problem. I'm trying to find the emails from the [email protected] string. I need a regexp which will find the email in starting and in middle with space. like it should detect the [email protected] and <space>[email protected]. here in middle of the string the email should start with space. I'm trying with below regexp it is shibbydibby.net not working. ';

var emails = extractEmailsFromString(stringThing)
console.log(emails);

function extractEmailsFromString(str){
    return str.match(/(([^<>()\[\]\\.,;:\s@"]+(\.[^<>()\[\]\\.,;:\s@"]+)*)|(".+"))@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\])|(([a-zA-Z\-0-9]+\.)+[a-zA-Z]{2,}))/g);
}
0

вы можете следовать следующему регулярному выражению. Это жадный характер

[a-zA-Z0-9._+-]+?@[a-zA-Z0-9+-]+?\.com
  • 0
    что если это .net или .com.net или что-то странное ..
  • 0
    мой ответ адаптирован к тестовому сценарию опа, который он предоставил

Ещё вопросы

Сообщество Overcoder
Наверх
Меню