Python | Replace rear word in String
Last Updated :
23 Apr, 2023
Sometimes, while working with String list, we can have a problem in which we need to replace the most rear i.e last word of string. This problem has many application in web development domain. Let's discuss different ways in which this problem can be solved.
Method #1 : Using split() + join() This is one way in which we can perform this task. In this, we break elements into parts and then return the last value and perform the addition of new element using join().
Python3
# Python3 code to demonstrate working of
# Rear word replace in String
# using split() + join()
# initializing string
test_str = "GFG is good"
# printing original string
print("The original string is : " + test_str)
# initializing replace string
rep_str = "best"
# Rear word replace in String
# using split() + join()
res = " ".join(test_str.split(' ')[:-1] + [rep_str])
# printing result
print("The String after performing replace : " + res)
OutputThe original string is : GFG is good
The String after performing replace : GFG is best
Time Complexity: O(n)
Auxiliary Space: O(n)
Method #2 : Using rfind() + join() The combination of these functions can also be used to perform this task. In this, we perform the task of extracting the last word of the string using rfind() and join() is used to perform replace.
Python3
# Python3 code to demonstrate working of
# Rear word replace in String
# using rfind() + join()
# initializing string
test_str = "GFG is good"
# printing original string
print("The original string is : " + test_str)
# initializing replace string
rep_str = "best"
# Rear word replace in String
# using rfind() + join()
res = test_str[: test_str.rfind(' ')] + ' ' + rep_str
# printing result
print("The String after performing replace : " + res)
OutputThe original string is : GFG is good
The String after performing replace : GFG is best
Time Complexity: O(n)
Auxiliary Space: O(n)
Method #3 : Using split(),pop(),append() and join() methods
Python3
# Python3 code to demonstrate working of
# Rear word replace in String
# initializing string
test_str = "GFG is good"
# printing original string
print("The original string is : " + test_str)
# initializing replace string
rep_str = "best"
# Rear word replace in String
x = test_str.split()
x.pop()
x.append(rep_str)
res = " ".join(x)
# printing result
print("The String after performing replace : " + res)
OutputThe original string is : GFG is good
The String after performing replace : GFG is best
Time Complexity: O(n)
Auxiliary Space: O(n)
Method #4:Using split(),indexing, list(),join() functions
Python3
# Python3 code to demonstrate working of
# Rear word replace in String
# initializing string
test_str = "GFG is good"
# printing original string
print("The original string is : " + test_str)
# initializing replace string
rep_str = "best"
list_words = list(test_str.split())
list_words[-1] = rep_str
res = " ".join(list_words)
# printing result
print("The String after performing replace : " + res)
OutputThe original string is : GFG is good
The String after performing replace : GFG is best
Time Complexity: O(n)
Auxiliary Space: O(n)
Method #5 : Using regex
Python3
import re
#initializing string
test_str = "GFG is good"
#printing original string
print("The original string is : " + test_str)
#initializing replace string
rep_str = "best"
#Rear word replace in String
res = re.sub(r'\b[\w-]+\b(?=\s*$)', rep_str, test_str)
#printing result
print("The String after performing replace : " + res)
OutputThe original string is : GFG is good
The String after performing replace : GFG is best
Time Complexity: O(n)
Auxiliary Space: O(n)
Method #6: Using str.rsplit()
Python3
test_str = "GFG is good"
rep_str = "best"
#printing original string
print("The original string is : " + test_str)
words = test_str.rsplit(maxsplit=1)
words[-1] = rep_str
res = " ".join(words)
print("The String after performing replace : " + res)
#This code is contributed by Jyothi pinjala
OutputThe original string is : GFG is good
The String after performing replace : GFG is best
Time Complexity: O(n)
Auxiliary Space: O(n)
Method 7: Using rpartition() function
Step-by-step approach:
- Initialize the original string and print it.
- Initialize the replace string.
- Use rpartition() function to split the string into three parts: string before the last occurrence of space,space, and the last word.
- Concatenate the first two parts with the replace string and space separator.
- Store the result in a variable.
- Print the result.
Python3
# initializing string
test_str = "GFG is good"
# printing original string
print("The original string is : " + test_str)
# initializing replace string
rep_str = "best"
# using rpartition() function to split the string
first, sep, last = test_str.rpartition(' ')
# replacing the last word with replace string
last = rep_str
# concatenate the first two parts and the replace string with space separator
res = first + sep + last
# printing result
print("The String after performing replace : " + res)
OutputThe original string is : GFG is good
The String after performing replace : GFG is best
Time complexity: O(n), where n is the length of the string.
Auxiliary space: O(n), for storing the result in a variable.
Similar Reads
Remove spaces from a string in Python Removing spaces from a string is a common task in Python that can be solved in multiple ways. For example, if we have a string like " g f g ", we might want the output to be "gfg" by removing all the spaces. Let's look at different methods to do so:Using replace() methodTo remove all spaces from a s
2 min read
Python | Remove unwanted spaces from string Sometimes, while working with strings, we may have situations in which we might have more than 1 spaces between intermediate words in strings that are mostly unwanted. This type of situation can occur in web development and often needs rectification. Let's discuss certain ways in which this task can
4 min read
Replace Substrings from String List - Python The task of replacing substrings in a list of strings involves iterating through each string and substituting specific words with their corresponding replacements. For example, given a list a = ['GeeksforGeeks', 'And', 'Computer Science'] and replacements b = [['Geeks', 'Gks'], ['And', '&'], ['C
3 min read
Replace multiple words with K - Python We are given a string s and the task is to replace all occurrences of specified target words with a single replacement word K.For example, given text = "apple orange banana" and words_to_replace = ["apple", "banana"], the output will be "K orange K".Using List ComprehensionThis is the most efficient
4 min read
Word location in String - Python Word location in String problem in Python involves finding the position of a specific word or substring within a given string. This problem can be approached using various methods in Python, such as using the find(), index() methods or by regular expressions with the re module.Using str.find()str.fi
4 min read