Day 28: RegEx, Patterns, and Intro to Databases

Sort by

recency

|

649 Discussions

|

  • + 0 comments
    import re
    if __name__ == '__main__':
        N = int(input().strip())
    
        names = []
        for N_itr in range(N):
            first_multiple_input = input().rstrip().split()
    
            firstName = first_multiple_input[0]
    
            emailID = first_multiple_input[1]
            
            if re.search('@gmail.com$', emailID):
                names.append(firstName)
        for name in sorted(names):
            print(name)
    
  • + 1 comment

    import java.io.; import java.util.; import java.util.regex.Pattern;

    public class Solution {

    public static void main(String[] args) {
        Scanner scan = new Scanner(System.in);
        int i = scan.nextInt();
        List<String> userlist = new ArrayList<String>();
    
        while( i-- >0 ){
            String name = scan.next();
            String email = scan.next();
    
            boolean isnamelength = Pattern.matches("\\w{1,20}", name);
            boolean isname = Pattern.matches("^[a-z]*$", name);            
    
            boolean ismaillength = Pattern.matches("\\D{1,50}", email);
            boolean isgmail = email.endsWith("@gmail.com");
    
            if(isnamelength && isname && ismaillength && isgmail){
                userlist.add(name);
            }
        }
    
        String[] arr = userlist.toArray(new String[userlist.size()]);
        Arrays.sort(arr);
        for(int j = 0 ; j<userlist.size(); j++){
            System.out.println(arr[j]);
        }
    }
    

    }

  • + 0 comments

    fast python solution

    import re
    
    n = int(input().strip())
    
    data = []
    for _ in range(n):
        first_multiple_input = input().rstrip().split()
    
        first_name = first_multiple_input[0]
    
        email_id = first_multiple_input[1]
    
        data.append(first_name) if re.findall("\w[a-zA-Z]*@gmail.com", email_id) else None
    
    [print(x) for x in sorted(data)]
    
  • + 0 comments

    c#

    class Solution { public static void Main(string[] args) { int N = Convert.ToInt32(Console.ReadLine().Trim());

        List<string> l= new();
    
        for (int NItr = 0; NItr < N; NItr++)
        {
            string[] firstMultipleInput = Console.ReadLine().TrimEnd().Split(' ');
    
            string firstName = firstMultipleInput[0];
    
            string emailID = firstMultipleInput[1];
    
            if(!l.Any(i=>i==emailID) && Regex.Match(emailID, "@gmail.com").Success)
            {
                l.Add(firstName);
            }
        }
    
        foreach(var e in l.Order())
        {
            Console.WriteLine(e);
        }
    }
    

    }

  • + 0 comments

    C#

    using System.Text.RegularExpressions;

    int N = int.Parse(Console.ReadLine()); List names = new List();

    Regex gmailPattern = new Regex(@"@gmail.com$");

    for (int i = 0; i < N; i++) { var parts = Console.ReadLine().Split(' '); string firstName = parts[0]; string emailID = parts[1];

    if (gmailPattern.IsMatch(emailID))
        names.Add(firstName);
    

    }

    foreach (var name in names.OrderBy(n => n)) Console.WriteLine(name);