Open In App
Related Articles

Python – Check if String Contain Only Defined Characters using Regex

Improve
Improve
Improve
Like Article
Like
Save Article
Save
Report issue
Report

In this article, we are going to see how to check whether the given string contains only a certain set of characters in Python. These defined characters will be represented using sets.

Examples:

Input: ‘657’ let us say regular expression contains the following characters- (‘78653’)

Output: Valid

Explanation: The Input string only consists of characters present in the given string.

Input: ‘7606’ let us say regular expression contains the following characters-
(‘102’) 

Output: Invalid

Explanation: The input string consists of characters not present in given string.

Algorithm

Step 1: Define the pattern of the string using RegEx.

Step 2: Match the string with the specified pattern

Step 3: Print the Output

Check if String Contains Only Defined Characters using Regex

The method or approach is simple we will define the character set using a regular expression. The regular expression is a special pattern or sequence of characters that will allow us to match and find other sets of characters or strings. 

Functions Used:

  • compile(): Regular expressions are compiled into pattern objects, which have methods for various operations such as searching for pattern matches or performing string substitutions.
  • search(): re.search() method either returns None (if the pattern doesn’t match), or a re.MatchObject that contains information about the matching part of the string. This method stops after the first match, so this is best suited for testing a regular expression more than extracting data.

Below is the implementation.

Python3

# _importing module
import re
def check(str, pattern):
    # _matching the strings
    if re.search(pattern, str):
        print("Valid String")
    else:
        print("Invalid String")
# _driver code
pattern = re.compile('^[1234]+$')
check('2134', pattern)
check('349', pattern)

                    

Output:

Valid String
Invalid String

Note: You can also use re.match() in place of re.search()

Time complexity :  O(n)
Space Complexity : O(1)


Last Updated : 05 Jan, 2024
Like Article
Save Article
Previous
Next
Share your thoughts in the comments
Similar Reads