Python 查找字符串中的所有出现
Python 中的子字符串是出现在另一个字符串中的一组字符。处理子串通常很麻烦。一个这样的问题是在特定字符串中查找所有出现的子字符串。
本篇文章将讨论在 Python 中查找字符串中所有出现的子字符串的不同方法。
在 Python 中使用 string.count()
函数查找字符串中子字符串的所有出现次数
string.count()
是 Python 中的一个内置函数,它返回给定特定字符串中子字符串出现的数量或出现次数。此外,它还具有附加参数 start
和 end
来指定开始和结束位置的索引。
count()
方法遍历字符串并返回特定子字符串在字符串中出现的次数。
以下代码使用 string.count()
函数查找字符串中所有出现的子字符串。
#defining string and substring
str1 = "This dress looks good; you have good taste in clothes."
substr = "good"
#occurrence of word 'good' in whole string
count1 = str1.count(substr)
print(count1)
#occurrence of word 'good' from index 0 to 25
count2 = str1.count(substr,0,25)
print(count2)
输出:
2
1
这是一种简单的方法,适用于任何情况。此方法的唯一缺点是它不返回子字符串在字符串中出现的不同索引。
在 Python 中使用列表推导和 startswith()
查找字符串中子字符串的所有出现次数
这个方法需要两件事:列表推导和 startswith()
方法。
startswith()
函数执行获取子字符串开始索引的任务,并利用列表推导来遍历完整的目标字符串。
以下代码使用列表推导和 startswith()
来查找字符串中所有出现的子字符串。
# defining string
str1 = "This dress looks good; you have good taste in clothes."
# defining substring
substr = "good"
# printing original string
print("The original string is : " + str1)
# printing substring
print("The substring to find : " + substr)
# using list comprehension + startswith()
# All occurrences of substring in string
res = [i for i in range(len(str1)) if str1.startswith(substr, i)]
# printing result
print("The start indices of the substrings are : " + str(res))
输出:
The original string is : This dress looks good; you have good taste in clothes.
The substring to find : good
The start indices of the substrings are : [17, 34]
在 Python 中使用 re.finditer()
查找字符串中子字符串的所有出现
re.finditer()
是 Python 提供给程序员在他们的代码中使用的正则表达式库的一个函数。它有助于执行查找字符串中特定模式出现的任务。要使用此功能,我们需要先导入正则表达式库 re
。
re.finditer()
在其语法中使用了 pattern
和 string
参数。在这种情况下,模式指的是子字符串。
以下代码使用 re.finditer()
函数查找字符串中所有出现的子字符串。
import re
# defining string
str1 = "This dress looks good; you have good taste in clothes."
#defining substring
substr = "good"
print("The original string is: " + str1)
print("The substring to find: " + substr)
result = [_.start() for _ in re.finditer(substr, str1)]
print("The start indices of the substrings are : " + str(result))
输出:
The original string is: This dress looks good; you have good taste in clothes.
The substring to find: good
The start indices of the substrings are : [17, 34]
相关文章
Django 中的 Slug
发布时间:2023/05/04 浏览次数:173 分类:Python
-
本篇文章旨在定义一个 slug 以及我们如何使用 slug 字段在 Python 中使用 Django 获得独特的帖子。
在 Django 中按降序过滤查询集中的项目
发布时间:2023/05/04 浏览次数:157 分类:Python
-
在这个讲解中,学习如何借助 Django 中的 order_by() 方法按降序过滤出查询集中的项目。
Django ALLOWED_HOSTS 介绍
发布时间:2023/05/04 浏览次数:181 分类:Python
-
本文展示了如何创建您的 Django 网站,为公开发布做好准备,如何设置 ALLOWED_HOSTS 以及如何在使用 Django 进行 Web 部署期间修复预期的主要问题。
Django 中的 Select_related 方法
发布时间:2023/05/04 浏览次数:129 分类:Python
-
本文介绍了什么是查询集,如何处理这些查询以及我们如何利用 select_related() 方法来过滤 Django 中相关模型的查询。
使用 Post 请求将数据发送到 Django 服务器
发布时间:2023/05/04 浏览次数:159 分类:Python
-
在这篇关于Django的讲解中,我们简要介绍了post和get请求以及如何在Django中用post实现CSRF token。
Django 返回 JSON
发布时间:2023/05/04 浏览次数:106 分类:Python
-
在与我们的讨论中,我们简要介绍了 JSON 格式,并讨论了如何借助 Django 中的 JsonResponse 类将数据返回为 JSON 格式。
在 Django 中创建对象
发布时间:2023/05/04 浏览次数:59 分类:Python
-
本文的目的是解释什么是模型以及如何使用 create() 方法创建对象,并了解如何在 Django 中使用 save() 方法。
在 Django 中为多项选择创建字段
发布时间:2023/05/04 浏览次数:75 分类:Python
-
在本文中,我们将着眼于为多项选择创建一个字段,并向您展示如何允许用户在 Django 中进行多项选择。