python – How to get a string after a specific substring?
python – How to get a string after a specific substring?
The easiest way is probably just to split on your target word
my_string=hello python world , im a beginner
print my_string.split(world,1)[1]
split takes the word (or character) to split on and optionally a limit to the number of splits.
In this example, split on world and limit it to only one split.
s1 = hello python world , im a beginner
s2 = world
print s1[s1.index(s2) + len(s2):]
If you want to deal with the case where s2
is not present in s1
, then use s1.find(s2)
as opposed to index
. If the return value of that call is -1
, then s2
is not in s1
.
python – How to get a string after a specific substring?
Im surprised nobody mentioned partition
.
def substring_after(s, delim):
return s.partition(delim)[2]
IMHO, this solution is more readable than @arshajiis. Other than that, I think @arshajiis is the best for being the fastest — it does not create any unnecessary copies/substrings.