How to match at the beginning of string in python using Regular Expression?

A regular expression in Python is a group of characters that allows you to use a search pattern to find a string or set of strings. RegEx is a term for regular expressions. To work with regular expressions in Python, use the re package.

Understanding String Matching in Python

String matching is a basic Python method that allows you to look for and find patterns in a given text. The match() function, a component of the re (regular expression) package, is one of the widely used methods for this purpose.

Use the match() method to determine whether the beginning of a string matches a specific pattern. It returns None if the pattern is not at the beginning of the string, and returns a match object otherwise.

Before using the match() function, you will have to create a regular expression pattern that reflects the desired string format. Regular expressions are a better and flexible way for describing and matching text patterns.

Key Symbols in Regular Expressions

To match the beginning of the string in Python by using a regular expression, we use the ^\w+ regular expression.

Here,

  • ^ implies the start with.
  • \w returns a match where the string contains any word characters (a-z, A-Z, 0-9, and underscore character).
  • + indicates one or more occurrences of a character.

Using re.match() Method

The re.match() function specifically checks if a pattern matches at the beginning of a string ?

import re

text = "tutorialspoint is a great platform"
pattern = r"^\w+"
result = re.match(pattern, text)

if result:
    print("Match found:", result.group())
else:
    print("No match at beginning")
Match found: tutorialspoint

Using re.search() Method

The re.search() function in Python searches the string for a match and returns a match object if there is any match. The group() method is used to return the part of the string that is matched.

Finding First Word

Following is an example ?

import re

s = 'tutorialspoint is a great platform to enhance your skills'
result = re.search(r'^\w+', s)
print(result.group())
tutorialspoint

Finding First Letter

Now, let us find out the first letter of a single string using the re.search() method in Python ?

import re

s = 'Program'
result = re.search(r"^[a-zA-Z]", s)
print('The first letter of the given string is:', result.group())
The first letter of the given string is: P

Using re.findall() Method

The method findall(pattern, string) in Python locates every occurrence of the pattern within the string. The caret (^) guarantees that you only match the word at the beginning of the string when you use the pattern ^\w+.

Finding First Word with findall()

Following is an example using the findall() method ?

import re

text = 'tutorialspoint is a great platform to enhance your skills in tutorialspoint'
result = re.findall(r'^\w+', text)
print(result)

The substring 'tutorialspoint' appears twice, but there is only one place in the string where it matches, which is at the beginning, as seen in the output below ?

['tutorialspoint']

Finding First Letter with findall()

Now, let us find out the first letter of a single string using re.findall() method in Python ?

import re

s = 'Program'
result = re.findall(r"^[a-zA-Z]", s)
print('The first letter of the given string is:', result)
The first letter of the given string is: ['P']

Comparison of Methods

Method Return Type Best For
re.match() Match object or None Checking if pattern exists at start
re.search() Match object or None Finding first occurrence anywhere
re.findall() List of matches Getting all matches as a list

Practical Example: Validating an Email Address

Regular expressions are widely used in many different applications, including data validation and text processing ?

import re

email = "test@example.com"
pattern = r'^[a-zA-Z0-9_.+-]+@[a-zA-Z0-9-]+\.[a-zA-Z0-9-.]+$'
match = re.match(pattern, email)
print("Valid Email" if match else "Invalid Email")
Valid Email

Conclusion

Use re.match() to check patterns at the beginning of strings. The ^ anchor ensures matching starts from the beginning, while \w+ matches word characters. Choose match() for validation, search() for finding, and findall() for collecting all matches.

Updated on: 2026-03-24T18:53:59+05:30

13K+ Views

Kickstart Your Career

Get certified by completing the course

Get Started
Advertisements