You are currently viewing Get substring of a string in Python

How to get substring of a string in Python? There are several methods you can use to get specific portions of a string, from simple slicing and string methods to more advanced techniques like regular expressions and the parse module. In this article, we’ll explore each of these methods in detail and provide code examples to show you how they work.

Advertisements

1. Quick Examples of Substring of a String

We will provide some quick examples below. Keep in mind that these examples will give a high-level idea of how to get a substring of a string. We will discuss each of them in more detail in later sections.


# Quick Examples of Substring of a String
import re

# Example string
s = "SparkByExamples is Good Website."

# Slicing
substring = s[0:6]  

# Regular expressions
pattern = r"(\w+) Website"
match = re.search(pattern, s)
substring = match.group(1)  

2. Get Substring of a String using Slicing

Slicing is a built-in Python feature that allows you to extract a substring from a string by specifying its start and end indices. The resulting string will include all the characters from the start index up to, but not including, the end index.

Slicing can be useful for extracting substrings from a string based on their position within the string. For example, you might use slicing to extract the first three characters of a string or to extract a range of characters between two specific indices.

Follow these steps to Get a substring of a string using the Slicing method:

  • Identify the start index as the position of the first character you want to include in the substring.
  • Now identify the end index as the position of the first character you don’t want to include in the substring.
  • Use square brackets to enclose the start and end indices, separated by a colon (:).

See the following Example:


# Example string
s = "SparkByExamples is Good Website."

# Get substring using Slicing
substring = s[0:5]  
print(substring)

# Output:
# Spark

3. Regular Expressions – Substring Match to Pattern

A regular expression can be used for searching and extracting substrings from strings in Python. This allows you to search for and extract substrings based on complex patterns of characters, rather than simple substrings or delimiters.

Python’s re module provides support for regular expressions. The module provides various methods for searching for and extracting substrings based on regular expression patterns.

See the following example that uses Regular expression to get a substring from a string:


# Import re module
import re

# Using regex to extract the first word
match = re.search(r"\b\w+\b", s)
substring = match.group(0)  
print(substring) # Extracts "SparkByExamples"

# Using regex to extract the word "Good"
match = re.search(r"\bGood\b", s)
substring = match.group(0)  
print(substring) # Extracts "Good"

# Using regex to replace "Good" with "Great"
substring = re.sub(r"\bGood\b", "Great", s)  
print(substring) # Replaces "Good" with "Great"

4. parse Module – Parse String for Substring

The parse module in Python can be used to parse strings and get specific values from them. The parse module can be useful when you need to extract a specific pattern from a string, rather than a fixed substring.

Use the following steps to use the parse module for getting substring of a string in Python:

  • parse is a third party python module, so you need to install it first.
  • Define the pattern that you want to extract from the string.
  • Use the parse.parse() function to extract the values from the string using the pattern.
  • Access the extracted values using the names of the placeholders.

See the following Example:


# Import parse module
from parse import parse

# Define format string
format_str = "{word1}By{word2} is {} Website."

# Parse input string using format string
parsed = parse(format_str, s)

# Print result
print("Substring:", parsed[0])

5. String Methods – Getting Substring of String

Python provides several built-in string methods that can be used to extract substrings from a string. These methods offer more flexibility than slicing, as they allow you to search for specific patterns within the string and extract substrings based on those patterns.

See the following examples where we have used different string methods for the purpose of getting substring of a string:


# Splitting
substring = s.split()[0]  
print(substring) # Extracts "SparkByExamples"

# Finding
substring = s[s.find("Good"):s.find(" Website")] 
print(substring) # Extracts "Good"

# Replacing
substring = s.replace("Good", "Great")  
print(substring) # Replaces "Good" with "Great"

6. Summary and Conclusion

We have covered different ways to get a substring of a string in Python for example by using string slicing, string methods, regular expressions, and the parse module. If you have any questions, please leave a comment below.

Happy coding!