How to find substring in Python

伊谢尔伦
Release: 2017-06-28 13:27:01
Original
1688 people have browsed it

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
Copy after login

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
Copy after login


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
Copy after login


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~
Copy after login


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])
Copy after login


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!

Related labels:
source:php.cn
Statement of this Website
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template