Python 基础教程

Python 高级教程

Python 相关应用

Python 笔记

Python FAQ

original icon
版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://www.knowledgedict.com/tutorial/python-check-if-string-contains-substring.html

python 如何判断字符串中是否包含指定子字符串

Python 笔记 Python 笔记


开发者在 python 操作字符串时,经常需要判断字符串中是否包含指定子字符串,这里给大家介绍常用的几种方法。

几种方式

in 运算符

最简单的方式,也是最常用的方法是用 in 运算符,示例如下:

if 'substring' in some_string:
    print(some_string)

in 运算符接受两个参数,运算逻辑是左参数是否包含在右参数中,如果包含返回 True,否则返回 False

find() 和 rfind() 函数

利用 str 模块的 find()rfind() 函数。

find 表示从左向右搜索子字符串,rfind 表示从右向左搜索子字符串,如果匹配成功,两者都返回对应的位置(索引),否则返回 -1。

string = "This is a string"

print('find', string.find('is'))

print('rfind', string.rfind('is'))

print('find', string.find('int'))

上述示例输出如下:

find 2
rfind 5
find -1

当然,上述两个函数也可以指定搜索的范围,即指定起始索引位置和结束索引位置。

index() 和 rindex() 函数

和 find 和 rfind 函数类似,内置 str 模块也提供了 index()rindex() 函数,只不过在找不到子字符串的时候会报一个 ValueError 的异常。

string = "This is a string"

print('find', string.index('is'))

print('rfind', string.rindex('is'))

上述示例输出如下:

find 2
rfind 5

若是不存在的子字符串,它会报 ValueError:

string = "This is a string"

print('find', string.index('int'))

报错信息如下:

Traceback (most recent call last):
  File "/xxxx/xxx/xx.py", line 12, in <module>
    print('find', string.index('int'))
ValueError: substring not found

 

contains()方法`String`类提供了一个`contains()`方法,可用于检查一个字符串是否包含另一个子字符串。示例代码:## ...
contains()方法这是最简单的方式之一,使用`String`类自带的`contains()`方法来检查一个字符串是否包含另一个字符串。 ...
在Django中,模板过滤器(TemplateFilters)是一种用于对模板中的变量进行转换或处理的方法。使用方法假设我们有一个字符串变量 ...
我将为你介绍三种常见的实现方式,包括使用`String`的内置方法、正则表达式以及第三方库ApacheCommonsLang的方法。###使 ...
Java 没有内置的字符串类型,而是在标准 Java 类库中提供了一个预定义类,很自然地叫做 String。每个用双引号括起来的字符串都是 ...