Loading...
EyubDjelil avatar EyubDjelil 9 Точки

Text Processing and Regex API - Extract Emails

Здравейте колеги,

видях много предложения за regex решения на тази задача , но за съжаление всички до един бяха грешни. 

Затова и питам тук тъкмо и трейнърите биха ни помогнали тъй като regex материята е труден - поне за мен а от видяното съдя и за останалите.

Какъв би бил коректния regex. 

Условието е следното : 

Write a program to extract all email addresses from given text. The text comes at the first input line. Print the emails in the output, each at a separate line. Emails are considered to be in format <user>@<host>, where:

  • <user> is a sequence of letters and digits, where '.', '-' and '_' can appear between them. Examples of valid users: "stephan", "mike03", "s.johnson", "st_steward", "softuni-bulgaria", "12345". Examples of invalid users: ''--123", ".....", "nakov_-", "_steve", ".info".
  • <host> is a sequence of at least two words, separated by dots '.'. Each word is sequence of letters and can have hyphens '-' between the letters. Examples of hosts: "softuni.bg", "software-university.com", "intoprogramming.info", "mail.softuni.org". Examples of invalid hosts: "helloworld", ".unknown.soft.", "invalid-host-", "invalid-".
  • Example of valid emails: info@softuni-bulgaria.org, kiki@hotmail.co.uk, no-reply@github.com, s.peterson@mail.uu.net, info-bg@software-university.software.academy.

 

Лично аз измъдрих това като решение , но се съмнявам да е вярно: 

[a-zA-Z0-9]+[\.\-\_]*[a-zA-Z0-9]+@[a-zA-Z]+[\-]*[a-zA-Z]+.[a-zA-Z]+

очаквам кртитики , предложения, съвети. 

1
Fundamentals Module 10/04/2016 09:50:30
boucheron avatar boucheron 4 Точки

Какъв би бил коректния regex.

"[A-Z0-9]+([.-_]?[A-Z0-9]+)+@[A-Z]+[-]?[A-Z]+(\\.[A-Z]+[-]?[A-Z]+)+", Pattern.CASE_INSENSITIVE

 

0
Можем ли да използваме бисквитки?
Ние използваме бисквитки и подобни технологии, за да предоставим нашите услуги. Можете да се съгласите с всички или част от тях.
Назад
Функционални
Използваме бисквитки и подобни технологии, за да предоставим нашите услуги. Използваме „сесийни“ бисквитки, за да Ви идентифицираме временно. Те се пазят само по време на активната употреба на услугите ни. След излизане от приложението, затваряне на браузъра или мобилното устройство, данните се трият. Използваме бисквитки, за да предоставим опцията „Запомни Ме“, която Ви позволява да използвате нашите услуги без да предоставяте потребителско име и парола. Допълнително е възможно да използваме бисквитки за да съхраняваме различни малки настройки, като избор на езика, позиции на менюта и персонализирано съдържание. Използваме бисквитки и за измерване на маркетинговите ни усилия.
Рекламни
Използваме бисквитки, за да измерваме маркетинг ефективността ни, броене на посещения, както и за проследяването дали дадено електронно писмо е било отворено.