We use cookies to ensure you have the best browsing experience on our website. Please read our cookie policy for more information about how we use cookies.
  • HackerRank Home

    HackerRank

  • |
  • Prepare
  • Certify
  • Compete
  • Hiring developers?
  1. Prepare
  2. Python
  3. Python Functionals
  4. Validating Email Addresses With a Filter

Validating Email Addresses With a Filter

Problem
Submissions
Leaderboard
Discussions
Editorial

You are given an integer followed by email addresses. Your task is to print a list containing only valid email addresses in lexicographical order.

Valid email addresses must follow these rules:

  • It must have the username@websitename.extension format type.
  • The username can only contain letters, digits, dashes and underscores .
  • The website name can only have letters and digits .
  • The extension can only contain letters .
  • The maximum length of the extension is .

Concept

A filter takes a function returning True or False and applies it to a sequence, returning a list of only those members of the sequence where the function returned True. A Lambda function can be used with filters.

Let's say you have to make a list of the squares of integers from to (both included).

>> l = list(range(10))
>> l = list(map(lambda x:x*x, l))

Now, you only require those elements that are greater than but less than .

>> l = list(filter(lambda x: x > 10 and x < 80, l))

Easy, isn't it?

Example

Complete the function fun in the editor below.

fun has the following paramters:

  • string s: the string to test

Returns

  • boolean: whether the string is a valid email or not

Input Format

The first line of input is the integer , the number of email addresses.
lines follow, each containing a string.

Constraints

Each line is a non-empty string.

Sample Input

3
lara@hackerrank.com
brian-23@hackerrank.com
britts_54@hackerrank.com

Sample Output

['brian-23@hackerrank.com', 'britts_54@hackerrank.com', 'lara@hackerrank.com']

Author

harsh_beria93

Difficulty

Medium

Max Score

20

Submitted By

55165

Need Help?


View discussions
View editorial
View top submissions

rate this challenge

MORE DETAILS

Download problem statement
Download sample test cases
Suggest Edits
  • Blog
  • Scoring
  • Environment
  • FAQ
  • About Us
  • Support
  • Careers
  • Terms Of Service
  • Privacy Policy