Python re.fullmatch Function

🎓 Top 15 Udemy Courses (80-90% Discount): My Udemy Courses - Ramesh Fadatare — All my Udemy courses are real-time and project oriented courses.

▶️ Subscribe to My YouTube Channel (178K+ subscribers): Java Guides on YouTube

▶️ For AI, ChatGPT, Web, Tech, and Generative AI, subscribe to another channel: Ramesh Fadatare on YouTube

The re.fullmatch function in Python's re module attempts to match a regular expression pattern to the entire string. This function is useful for validating strings where the entire string must match a specific pattern.

Table of Contents

  1. Introduction
  2. re.fullmatch Function Syntax
  3. Examples
    • Basic Usage
    • Using Groups in Patterns
    • Using Flags with re.fullmatch
    • Validating Email Addresses
  4. Real-World Use Case
  5. Conclusion

Introduction

The re.fullmatch function in Python's re module checks if the entire string matches a given regular expression pattern. If the pattern matches the entire string, it returns a match object; otherwise, it returns None. This function is particularly useful for validations where the whole string needs to adhere to a specified format.

re.fullmatch Function Syntax

Here is how you use the re.fullmatch function:

import re

match = re.fullmatch(pattern, string, flags=0)

Parameters:

  • pattern: The regular expression pattern to match.
  • string: The string to search within.
  • flags: Optional. Flags that modify the behavior of the pattern, such as re.IGNORECASE, re.MULTILINE, etc.

Returns:

  • A match object if the entire string matches the pattern, otherwise None.

Examples

Basic Usage

Here is an example of how to use the re.fullmatch function to match a pattern to the entire string.

Example

import re

# Matching a pattern to the entire string
match = re.fullmatch(r'\d+', '12345')

# Checking if a match was found
if match:
    print(f"Match found: {match.group()}")
else:
    print("No match found.")

Output:

Match found: 12345

Using Groups in Patterns

This example demonstrates how to use groups in a regular expression pattern and access them in the match object.

Example

import re

# Matching a pattern with groups to the entire string
match = re.fullmatch(r'(\d+)-(\d+)-(\d+)', '123-456-789')

# Checking if a match was found and accessing groups
if match:
    print(f"Full match: {match.group(0)}")
    print(f"Group 1: {match.group(1)}")
    print(f"Group 2: {match.group(2)}")
    print(f"Group 3: {match.group(3)}")
else:
    print("No match found.")

Output:

Full match: 123-456-789
Group 1: 123
Group 2: 456
Group 3: 789

Using Flags with re.fullmatch

This example demonstrates how to use flags with the re.fullmatch function to modify the behavior of the pattern.

Example

import re

# Matching a pattern with the IGNORECASE flag to the entire string
match = re.fullmatch(r'hello world', 'Hello World', re.IGNORECASE)

# Checking if a match was found
if match:
    print(f"Match found: {match.group()}")
else:
    print("No match found.")

Output:

Match found: Hello World

Validating Email Addresses

This example demonstrates how to validate email addresses using the re.fullmatch function.

Example

import re

# Compiling a regular expression pattern for email validation
email_pattern = re.compile(r'^[a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,}

Output:

test@example.com is a valid email address.
invalid-email is not a valid email address.
user@domain.com is a valid email address.

Real-World Use Case

Validating User Input

In real-world applications, the re.fullmatch function can be used to validate user input, such as checking if a string is a valid date in a specific format.

Example

import re

def is_valid_date(date):
    pattern = r'\d{4}-\d{2}-\d{2}'  # Pattern for YYYY-MM-DD format
    match = re.fullmatch(pattern, date)
    return bool(match)

# Example usage
dates = ['2021-01-01', '01-01-2021', '2021-1-1']
for date in dates:
    if is_valid_date(date):
        print(f'{date} is a valid date.')
    else:
        print(f'{date} is not a valid date.')

Output:

2021-01-01 is a valid date.
01-01-2021 is not a valid date.
2021-1-1 is not a valid date.

Conclusion

The re.fullmatch function in Python's re module attempts to match a regular expression pattern to the entire string and returns a match object if there is a match. This function is useful for validating strings where the entire string must match a specific pattern. Proper usage of this function can enhance the accuracy and reliability of your string validations in Python.

) def is_valid_email(email): return bool(email_pattern.fullmatch(email)) # Example usage emails = ['test@example.com', 'invalid-email', 'user@domain.com'] for email in emails: if is_valid_email(email): print(f'{email} is a valid email address.') else: print(f'{email} is not a valid email address.')

Output:


Real-World Use Case

Validating User Input

In real-world applications, the re.fullmatch function can be used to validate user input, such as checking if a string is a valid date in a specific format.

Example


Output:


Conclusion

The re.fullmatch function in Python's re module attempts to match a regular expression pattern to the entire string and returns a match object if there is a match. This function is useful for validating strings where the entire string must match a specific pattern. Proper usage of this function can enhance the accuracy and reliability of your string validations in Python.

My Top and Bestseller Udemy Courses. The sale is going on with a 70 - 80% discount. The discount coupon has been added to each course below:

Comments

Spring Boot 3 Paid Course Published for Free
on my Java Guides YouTube Channel

Subscribe to my YouTube Channel (165K+ subscribers):
Java Guides Channel

Top 10 My Udemy Courses with Huge Discount:
Udemy Courses - Ramesh Fadatare