Python – Multiple Indices Replace in String


When working with strings in Python, there are regular circumstances where we got to supplant numerous events of sub-strings at positions inside a bigger string. This errand requires an efficient approach to identify the lists of the characters or sub-strings that got to be supplanted and after that alter them with the required values. Python offers different strategies and calculations to achieve this. In this article, we are going investigate three diverse approaches to supplant different records in a string. These approaches include using the supplant() strategy, controlling a list of characters, and utilizing customary expressions (regex). Each approach has its claim preferences and can be connected based on the particular prerequisites of the assignment. By understanding these procedures, we are able successfully to supplant numerous lists in a string and control string information productively in Python. 

Multiple Indices Replace in String

The concept of supplanting different records in a string alludes to the errand of supplanting particular characters or sub-strings at indicated positions inside a string. In Python, there are a few approaches to attain this.

Another approach includes changing over the string into a list of characters. By doing so, we will directly get to and alter particular lists inside the list. This approach is valuable when we ought to make different substitutions effectively. We repeat over the files that ought to be supplanted, alter the comparing characters, and after that connect the altered characters back together to create the modern string.

A more progressed approach includes utilizing normal expressions (regex). Normal expressions give a capable way to discover and supplant designs inside strings. By utilizing the re-module in Python, we can develop a normal expression design that matches the characters in the desired files. We at that point utilize the sub() work from the re module to supplant the matched design with the wanted esteem. This approach offers adaptability and is reasonable for more complex string substitution scenarios.

Understanding these approaches gives us the capacity to supplant different files in a string in Python. Each approach has its possess focal points and maybe more reasonable depending on the particular prerequisites of the errand at hand. By practicing and experimenting with these strategies, we can end up capable of controlling strings in Python and viably supplant different lists as required. 

Approach

  • Approach 1 − Using the `replace()` Method

  • Approach 2 − Using the List and Joining

  • Approach 3 − Using Regular Expressions

Approach 1:  Using the `replace()` Method

Python's replace() method allows you to replace occurrences of a substring with a specified value. To replace multiple indices in a string, you can iterate through the list of indices and replace them one at a time. Here are the steps −

Algorithm

  • Define a user-defined String and give Indices.

  • Iterate and replace the String according to the given indices.

  • Output the modified string.

Example

str= "Hello World! Hello Python!"
indices = [0, 6, 13]
for index in indices:
    str= str[:index] + '#' + str[index+1:]
print(str)

Output

#ello #orld! #ello Python!

Approach 2: Using a List and Joining

This approach converts the string to a list of characters, modifies the given index, and recombines the characters to form a new string. Here are the steps:

Algorithm

  • Define the string and index to replace.

  • Convert a string to a list of characters.

  • Iterate over the index and change the appropriate character.

  • Merge changed characters into a new string.

  • Print a new string.

Example

string = "Hello World! Hello Python!"
indices = [0, 6, 13]
characters = list(string)
for index in indices:
    characters[index] = '#'
new_string = ''.join(characters)
print(new_string)

Output

#ello #orld! #ello Python!

Approach 3:  Using Regular Expression (Regex)

Regular expressions provide a powerful way to search for and replace patterns within strings. You can use Python's re-module to replace multiple indices with a regular expression. Here are the steps:

Algorithm

  • Import the re module

  • Define the string and give indices to replace

  • Iterate the loop and, replace the character according to the given indices.

  • Use the sub() function to replace the matching pattern with the desired value.

Example

import re
string = "Hello World! Hello Python!"
indices = [0, 6, 13]
pattern = '|'.join([re.escape(string[index]) for index in indices])
new_string = re.sub(pattern, '#', string)
print(new_string)

Output

#ello #orld! #ello Python!

Conclusion

In conclusion, we have investigated three distinctive approaches to supplant numerous records in a string utilizing Python. These approaches incorporate utilizing the supplant() strategy, controlling a list of characters, and leveraging normal expressions (regex). Each approach offers its claim preferences and can be connected based on the prerequisites of the errand at hand. This approach is effective when numerous substitutions got to be made and offer adaptability in taking care of string control. 

Updated on: 01-Sep-2023

168 Views

Kickstart Your Career

Get certified by completing the course

Get Started
Advertisements