Python作為一門高級編程語言,很容易處理字元串,其中判斷字元串包含也是常用的操作。本篇文章主要介紹Python3中判斷字元串包含的方法。
一、in和not in關鍵字
Python中最簡單的判斷一個字元串是否包含另一個字元串的方法就是使用in和not in關鍵字。in關鍵字用於判斷該字元串是否在另一個字元串中,如果存在,則返回True,否則返回False。not in則是剛好相反的結果。
def in_contains(string,sub_string):
if sub_string in string:
return True
else:
return False
def notin_contains(string,sub_string):
if sub_string not in string:
return True
else:
return False
string = 'Python3學習筆記'
sub_string = 'Python'
print(in_contains(string, sub_string)) # True
print(notin_contains(string, sub_string)) # False
使用in關鍵字的優點是簡單易懂,目前是Python3中最常用的判斷字元串包含的方法。但是需要注意的是in關鍵字匹配時是精確匹配,需要完全一致才能返回True。
二、字元串find方法
字元串find方法是Python中另一種用於判斷字元串是否包含的方法。find方法查找sub_string在string中第一次出現的位置,如果找到則返回第一次出現的位置,未找到則返回-1。
def find_contains(string,sub_string):
if string.find(sub_string) != -1:
return True
else:
return False
string = 'Python3學習筆記'
sub_string1 = 'Python'
sub_string2 = 'Java'
print(find_contains(string, sub_string1)) # True
print(find_contains(string, sub_string2)) # False
使用字元串find方法的優點是可以查找字元串中第一次出現的位置,並可以針對返回-1的情況進行判斷,適用範圍更廣。但是同樣需要注意,find方法匹配時是精確匹配,需要完全一致才能返回正確的位置。
三、正則表達式
正則表達式是一種高效而強大的字元串處理工具,可以處理複雜字元串的匹配和操作。Python內置了re模塊,其中findall方法可以用於查找滿足正則表達式匹配的所有子字元串,並返回一個列表。
import re
def regex_contains(string,sub_string):
pattern = re.compile(sub_string)
result = pattern.findall(string)
if len(result) != 0:
return True
else:
return False
string = "Python3學習筆記,Java學習筆記"
sub_string1 = "Python"
sub_string2 = "Java"
sub_string3 = "C++"
print(regex_contains(string,sub_string1)) # True
print(regex_contains(string,sub_string2)) # True
print(regex_contains(string,sub_string3)) # False
使用正則表達式的優點是可以針對字元串的模糊匹配進行處理,相對於in和find方法更為靈活。但是相對的,正則表達式的處理也會更為複雜,需要在特定情況下進行使用。
四、結語
本篇文章主要介紹Python3中判斷字元串包含的方法,其中包括in和not in關鍵字、字元串find方法和正則表達式的使用方法。以上三種方法都有各自的優缺點,需要根據實際情況選擇合適的方法進行處理。希望本篇文章能對Python初學者有所幫助。
原創文章,作者:SSHMP,如若轉載,請註明出處:https://www.506064.com/zh-tw/n/374212.html