📌  相关文章
📜  Python|检查字符串中是否存在子字符串(1)

📅  最后修改于: 2023-12-03 14:46:29.614000             🧑  作者: Mango

Python | 检查字符串中是否存在子字符串

在Python中,我们可以通过多种方式来检查一个字符串中是否存在另一个字符串。下面将介绍一些简单但是有效的方法。

方法一:使用in关键字

in关键字可以判断一个字符串是否为另一个字符串的子串。具体用法如下:

str1 = "hello world"
str2 = "world"
if str2 in str1:
    print("找到了!")

输出结果为:

找到了!
方法二:使用startswith和endswith方法

startswith和endswith方法分别可以检查一个字符串是否以另一个字符串开头或结尾。具体用法如下:

str1 = "hello world"
str2 = "hello"
str3 = "world"
if str1.startswith(str2):
    print("以hello开头")
if str1.endswith(str3):
    print("以world结尾")

输出结果为:

以hello开头
以world结尾
方法三:使用find和index方法

find和index方法可以检查一个字符串中是否存在另一个字符串,并返回该字符串在原字符串中的索引位置。如果不存在,则返回-1。具体用法如下:

str1 = "hello world"
str2 = "world"
print(str1.find(str2))   # 输出结果为6
print(str1.index(str2))  # 输出结果为6

如果要在一个范围内检查是否存在子字符串,可以在find和index方法的参数中指定检查范围:

str1 = "hello python world"
str2 = "world"
print(str1.find(str2, 7))  # 输出结果为13
print(str1.index(str2, 7))  # 输出结果为13
方法四:使用正则表达式

最后一种方法是使用正则表达式。正则表达式可以匹配一个特定的字符串模式,可以非常灵活地检查字符串。具体用法如下:

import re

str1 = "hello world"
pattern = "world"
if re.search(pattern, str1):
    print("找到了!")

输出结果为:

找到了!

以上就是Python中检查字符串是否存在子字符串的几种方法。无论是哪种方法,都非常简单直观易懂,而且效率也非常高。在实际应用中,可以根据不同的场景选择不同的方法。