JIYIK CN >

Current Location:Home > Learning > PROGRAM > Python >

Case-insensitive regular expressions in Python

Author:JIYIK Last Updated:2025/05/08 Views:

Regular expressions match specific strings in Python text. They form a search pattern and check if the search pattern exists in the text.

In this article, we will study about case insensitive regular expressions in Python. We further explain different ways to perform case insensitive search in a text.


Case-insensitive regular expressions in Python

The search pattern consists of a sequence of characters and can be specified using regular expression rules. However, to use regular Python expressions, you first need to import rethe module.

Case insensitivity means that text should be considered equal in lowercase and uppercase. We need to apply case insensitive search frequently in our daily life.

One such example is whenever we search for a certain item, eg . bag, the information about it will be displayed on the screen.

However, if we search in lowercase bagor using mixed case (for example bAG), it should also show the same results. Therefore, we need to treat different uppercase and lowercase letters as the same to easily search for results in specific scenarios.

Therefore, we use regular expressions to check for case-insensitive patterns in the text.

So let's discuss how to use regular expressions to extract search patterns from text.


re.IGNORECASEMatching strings in Python using case-insensitive flag

We can use Python’s search(), match(), or sub()functions to find if our search pattern is present in the text and extract their exact locations.

These functions take three parameters:

  • To search 模式.
  • The one to search for the pattern in 文本.
  • flag.

However, this flagparameter is an optional parameter but is used to enable several features in Python.

re.IGNORECASEUsed as a flag to enable case-insensitive searching in text. It will consider the characters to be the same [A-Z]as the string [a-z].

Let's take an example and use as a flag in our code re.IGNORECASE.

import re

re.search("the", "ThE", re.IGNORECASE)

Output:

<re.Match object; span=(0, 3), match='ThE'>

Similarly, you can pass the flag as in match()the function or the function to search for a case-insensitive string in the text.sub()re.IGNORECASE

However, if you want to search for all occurrences of a string in a text, then you should use Python’s re.findall()find function. It will find all the matching string present in the text.

However, you must pass the flag in the parameter re.IGNORECASEto search for case-insensitive strings in the text.

Let us see how to extract all occurrences of a string in a text.

import re

re.findall("the", "The sources informed the police of tHe thieves.", re.IGNORECASE)

Output:

['The', 'the', 'tHe']

The -p flag used above re.IGNORECASEcan also be written as re.I. The -p re.Iflag is also used to search for a case-insensitive pattern in the text.

Let's look at this with an example.

import re

re.findall("the", "The sources informed the police of tHe thieves.", re.I)

Output:

['The', 'the', 'tHe']

All these methods exist rein the Python module. Therefore, rethe module must be imported into the program before using it.


(?i)Matching strings in Python using case-insensitive notation

When you don't want search()to add a flag parameter in or any other function to extract a string from a text, we use (?i)the case-insensitive flag denoted by .

It is applied to the regular expression function before the search pattern without specifying extra flag arguments.

Following is the code that search()uses the case-insensitive flag in the method (?i).

import re

re.search("(?i)TABLE", table)

Output:

<re.Match object; span=(0, 5), match='table'>

However, you can search for a pattern in a larger string and use findall()the find method in Python to find all multiple occurrences of the search pattern from the string.

findall()Following is the code snippet of using the case-insensitive flag using the method in Python (?i).

import re

text = "Let it rain, let it snow, let it do!"
re.findall("(?i)LEt", text)

Output:

['Let', 'let', 'let']

Thus, the above code snippet outputs all the occurrences of the search pattern in the text. Place the symbol (?i)before the search pattern.


in conclusion

This article discussed regular expressions and how to use them to find case-insensitive search patterns in text. We used them in two ways.

First is re.IGNORECASEthe flag, which is passed as an argument to the search function, for example search(), , match(), findall()etc. You can also use re.IGNORECASEthe flag to search for a case-insensitive pattern using your string.

However, the second method uses a case-insensitive marker (?i)placed before the search pattern in the search function.

We can use these methods to find case-insensitive patterns in our text.

For reprinting, please send an email to 1244347461@qq.com for approval. After obtaining the author's consent, kindly include the source as a link.

Article URL:

Related Articles

Convert a list to a set in Python

Publish Date:2025/05/08 Views:144 Category:Python

This tutorial demonstrates how to convert a list to a set in Python. Difference between List and Set Lists and sets are standard Python data types that store values ​​in sequence. Python list stores comma separated values ​​between

Remove the first element from a list in Python

Publish Date:2025/05/08 Views:172 Category:Python

This tutorial will discuss different ways on how to remove the first element from a list. pop() Remove the first element from a list using the pop() Method can remove an element from a specific index. We have to specify the index from which

Convert a list to lowercase in Python

Publish Date:2025/05/08 Views:112 Category:Python

Lists can be used to store multiple items in a single variable. In Python, we can create a list of strings by enclosing the different elements in the list in single or double quotes. This tutorial demonstrates how to convert a list of strin

Remove all occurrences of an element from a Python list

Publish Date:2025/05/08 Views:69 Category:Python

In Python, lists allow the same element to appear multiple times. Even though the value of an element may be the same as other elements, each element will have a different index. Using these index numbers, you can easily access any element

Convert hex to bytes in Python

Publish Date:2025/05/08 Views:101 Category:Python

Hexadecimal, often abbreviated to hex, uses 16 symbols (0-9, a-f) to represent values, in contrast to the decimal system's 10. For example, 1000 in decimal is 3E8 in hexadecimal. Being proficient in dealing with hexadecimal is essential for

b in front of string in Python

Publish Date:2025/05/08 Views:53 Category:Python

This tutorial will discuss the statement in Python b" . b" Using the statement in Python b" The notation is used to specify strings in Python bytes . In contrast to regular strings with ASCII characters, bytes a string is an array of byte v

How to Convert Integer to Binary in Python

Publish Date:2025/05/08 Views:130 Category:Python

This tutorial explains how to convert an integer to binary in Python. This tutorial also lists some sample codes to illustrate different ways of converting from int to binary in Python. bin() Convert Int to Binary in Python using In Python,

How to convert an integer to bytes

Publish Date:2025/05/08 Views:77 Category:Python

Converting an integer int to a byte bytes is the inverse of bytes converting a byte to an integer . Most of the to methods int described in this article are the inverse of the to methods. int bytes bytes int Generic method for converting in

How to convert bytes to int in Python

Publish Date:2025/05/08 Views:111 Category:Python

Bytes The data type has a numerical range of 0~255 (0x00~0xFF). A byte has 8 bits of data, that's why its maximum value is 0xFF. In some cases, you need to convert a byte or byte array to an integer for further data processing. Let's see ho

Scan to Read All Tech Tutorials

Social Media
  • https://www.github.com/onmpw
  • qq:1244347461

Recommended

Tags

Scan the Code
Easier Access Tutorial