Skip to content
Related Articles
Open in App
Not now

Related Articles

How to check if a string starts with a substring using regex in Python?

Improve Article
Save Article
  • Last Updated : 31 Jan, 2023
Improve Article
Save Article

Prerequisite: Regular Expression in Python

Given a string str, the task is to check if a string starts with a given substring or not using regular expression.

Examples:

Input: String: "geeks for geeks makes learning fun" 
       Substring: "geeks" 
Output: True 
Input: String: "geeks for geeks makes learning fun" 
       Substring: "makes" 
Output: False

Approach 1:
Here, we first check a given substring present in a string or not if yes then we use search() function of re library along with metacharacter “^”. This metacharacter checks for a given string starts with substring provided or not. 

Below is the implementation of the above approach:

Python3




# import library
import re
 
# define a function
def find(string, sample) :
   
  # check substring present
  # in a string or not
  if (sample in string):
 
      y = "^" + sample
 
      # check if string starts
      # with the substring
      x = re.search(y, string)
 
      if x :
          print("string starts with the given substring")
 
      else :
          print("string doesn't start with the given substring")
 
  else :
      print("entered string isn't a substring")
 
 
# Driver code
string = "geeks for geeks makes learning fun" 
sample = "geeks"
 
# function call
find(string, sample)
 
sample = "makes"
 
# function call
find(string, sample)


Output:

string starts with the given substring
string doesn't start with the given substring

Time complexity : O(n), where n is the length of the input string.

Space complexity :  O(1) as it only uses a fixed amount of memory, regardless of the size of the input string.

Approach 2:
Here, we first check a given substring present in a string or not if yes then we use search() function of re library along with metacharacter “\A”. This metacharacter checks for a given string starts with substring provided or not.

 
Below is the implementation of the above approach:

Python3




# import library
import re
 
# define a function
def find(string, sample) :
   
  # check substring present
  # in a string or not
  if (sample in string):
 
      y = "\A" + sample
 
      # check if string starts
      # with the substring
      x = re.search(y, string)
 
      if x :
          print("string starts with the given substring")
 
      else :
          print("string doesn't start with the given substring")
 
  else :
      print("entered string isn't a substring")
 
 
# Driver code
string = "geeks for geeks makes learning fun" 
sample = "geeks"
 
# function call
find(string, sample)
 
sample = "makes"
 
# function call
find(string, sample)


Output:

string starts with the given substring
string doesn't start with the given substring

Time complexity : O(n), where n is the length of the input string.

Space complexity :  O(1) as it only uses a fixed amount of memory, regardless of the size of the input string.


My Personal Notes arrow_drop_up
Related Articles

Start Your Coding Journey Now!