Home > Article > Backend Development > How to find substring in Python
This article mainly introduces tips for finding substrings in Pythonstrings. Friends who need it can refer to it
If you are asked to write a program Check whether the string s2 contains s1. Maybe you can intuitively write the following code:
#determine whether s1 is a sub stringof s2 def isSubstring1(s1,s2): tag = False len1 = len(s1) len2 = len(s2) for i in range(0,len2): if s2[i] == s1[0]: for j in range(0,len1): if s2[i]==s1[j]: tag = True return tag
But this is Python, we can use the find() method that comes with strings, so we can do this:
def isSubstring2(s1,s2): tag = False if s2.find(s1) != -1: tag = True return tag
The sad thing is this. It turns out that the keyword "in" in Python can not only be used for lists, ancestors and other data types, but also for strings. So, you only need one line of code to do it here:
def isSubstring3(s1,s2): return s1 in s2
I realized it later, so ashamed ;-)
Similarly, suppose you want to find multiple substrings in a string Whether it exists, and prints out the position of these strings and their first occurrence:
def findSubstrings(substrings,destString): res = map(lambda x:str([destString.index(x),x]),filter(lambda x:x in destString,substrings)) if res: return ', '.join(list(res)) ;-) very cool~
UPDATE: It doesn’t matter if you are not used to the last seemingly complicated syntax. You can use list parsing, which is more concise. :
def findSubstrings(substrings,destString): return ', '.join([str([destString.index(x),x]) for x in substrings if x in destString])
The above is the detailed content of How to find substring in Python. For more information, please follow other related articles on the PHP Chinese website!