Python Logo

RegEx


What is Python regex?

Python regex (regular expressions) is a powerful tool for searching, extracting, and manipulating text data. Regex is based on a set of patterns that can be used to match specific sequences of characters in a string.

Regex syntax

Regex patterns are made up of a sequence of characters and metacharacters. Metacharacters are special characters that have special meaning in regex. For example, the . metacharacter matches any single character.

Example:

 

Code snippet

\d+
 

This regex pattern matches any sequence of one or more digits.

Regex functions

Python has a number of built-in regex functions, including:

  • re.search(): Searches for a regex pattern in a string and returns a match object.
  • re.match(): Matches a regex pattern at the beginning of a string and returns a match object.
  • re.split(): Splits a string on a regex pattern and returns a list of strings.
  • re.sub(): Substitutes a regex pattern in a string with another string.

Examples:

 

Python

import re

# Search for the regex pattern `\d+` in the string "12345".
match = re.search("\d+", "12345")

# If the pattern is found, print the match object.
if match:
    print(match.group())

# Match the regex pattern `\d+` at the beginning of the string "12345".
match = re.match("\d+", "12345")

# If the pattern is found, print the match object.
if match:
    print(match.group())

# Split the string "12345,67890" on the regex pattern `,`.
split_list = re.split(",", "12345,67890")

# Print the split list.
print(split_list)

# Substitute the regex pattern `\d` in the string "12345" with the string "X".
substituted_string = re.sub("\d", "X", "12345")

# Print the substituted string.
print(substituted_string)
 

Output:

 

12345
12345
['12345', '67890']
XX345
 

Using regex in Python libraries

Many Python libraries use regex to parse and validate text data. For example, the urllib.parse library uses regex to parse URL strings.

Example:

 

Python

import urllib.parse

# Parse the URL string "https://www.example.com/path/to/file?query=value".
url = urllib.parse.urlparse("https://www.example.com/path/to/file?query=value")

# Print the parsed URL.
print(url)
 

Output:

ParseResult(scheme='https', netloc='www.example.com', path='/path/to/file', params='', query='query=value', fragment='')

Conclusion

Python regex is a powerful tool that can be used to search, extract, and manipulate text data. By understanding how to use Python regex, you can write more efficient and robust code.