Java
Java

 

Introduction

Validating email addresses is a common requirement in software development. Ensuring that a given email is formatted correctly helps to prevent errors during registration, communication, and data storage. An email address typically follows a specific structure, such as: local-part@domain, where the local part can include letters, numbers, and symbols, while the domain part consists of a domain name and a domain extension (e.g., “.com”).

In this example, we will write a Java program that validates whether a given string is a properly formatted email address. The program will use regular expressions to check if the input matches the required email format.

Objective

The objective of this program is to create a Java-based email validator that checks if a given string is in a valid email format. The program will use regular expressions to validate the structure of the email address.

Java Program Code

public class EmailValidator {

    // Method to validate the email address
    public static boolean isValidEmail(String email) {
        // Regular expression pattern for validating email addresses
        String emailPattern = "^[a-zA-Z0-9_+&*-]+(?:\\.[a-zA-Z0-9_+&*-]+)*@(?:[a-zA-Z0-9-]+\\.)+[a-zA-Z]{2,7}$";
        
        // Check if the email matches the regular expression pattern
        return email.matches(emailPattern);
    }

    public static void main(String[] args) {
        // Test cases for validating email addresses
        String[] testEmails = {
            "valid.email@example.com", 
            "invalid-email.com", 
            "another.valid_123@mail.co", 
            "invalid@domain..com"
        };

        // Validate each email
        for (String email : testEmails) {
            if (isValidEmail(email)) {
                System.out.println(email + " is a valid email address.");
            } else {
                System.out.println(email + " is an invalid email address.");
            }
        }
    }
}

Explanation of the Program Structure

The Java program consists of the following parts:

  • isValidEmail() method: This method takes a string input (the email) and checks whether it matches the regular expression pattern defined for valid email addresses. If it does, the method returns true, indicating the email is valid.
  • Regular expression (Regex): The regular expression used in the program defines the rules for a valid email. It checks for:
    • Alphanumeric characters and special characters (like dots, underscores, and hyphens) in the local part.
    • An ‘@’ symbol separating the local part and domain part.
    • Alphanumeric characters and hyphens in the domain part, followed by a valid domain extension.
  • main() method: The main method runs some test cases and validates each email address using the isValidEmail() method. It then prints whether the email is valid or invalid.

How to Run the Program

To run this Java program, follow these steps:

    1. Ensure you have Java installed on your machine. You can download it from the official website if necessary.
    2. Save the code above in a file named EmailValidator.java.
    3. Open a command prompt or terminal window, navigate to the folder where the file is saved, and compile the code using the command:
javac EmailValidator.java
    1. Once the program compiles successfully, run it using the following command:
java EmailValidator
  1. The program will output whether each email address in the test cases is valid or invalid.
© 2024 Learn Programming. All Rights Reserved.

 

By Aditya Bhuyan

I work as a cloud specialist. In addition to being an architect and SRE specialist, I work as a cloud engineer and developer. I have assisted my clients in converting their antiquated programmes into contemporary microservices that operate on various cloud computing platforms such as AWS, GCP, Azure, or VMware Tanzu, as well as orchestration systems such as Docker Swarm or Kubernetes. For over twenty years, I have been employed in the IT sector as a Java developer, J2EE architect, scrum master, and instructor. I write about Cloud Native and Cloud often. Bangalore, India is where my family and I call home. I maintain my physical and mental fitness by doing a lot of yoga and meditation.

20 thoughts on “Email Address Validator in Java”

Leave a Reply

Your email address will not be published. Required fields are marked *

error

Enjoy this blog? Please spread the word :)