当前位置: 首页 > news >正文

Python3 笔记:字符串的 find()、rfind()、index()、rindex()

1、find() 方法检测字符串中是否包含子字符串 str ,如果指定 beg(开始) 和 end(结束) 范围,则检查是否包含在指定范围内,如果指定范围内如果包含指定索引值,返回的是索引值在字符串中的起始位置。如果不包含索引值,返回-1。

语法:str.find(str, beg=0, end=len(string))

str -- 指定检索的字符串

beg -- 开始索引,默认为0。

end -- 结束索引,默认为字符串的长度。

str1 = 'This is the reason why he is so successful.'
str2 = 'is'
print(str1.find(str2))	# 运行结果:2
print(str1.find(str2,4))	# 运行结果:5
print(str1.find(str2,8,40))	# 运行结果:26
print(str1.find(str2,30,40))	# 运行结果:-1

2、rfind() 返回字符串最后一次出现的位置,如果没有匹配项则返回-1。

语法:str.rfind(str, beg=0, end=len(string))

str1 = 'This is the reason why he is so successful.'
str2 = 'is'
print(str1.rfind(str2))	# 运行结果:26
print(str1.rfind(str2,15))	# 运行结果:26
print(str1.rfind(str2,0,5))	# 运行结果:2
print(str1.rfind(str2,5,0))	# 运行结果:-1

3、index() 方法检测字符串中是否包含子字符串 str ,如果指定 beg(开始) 和 end(结束) 范围,则检查是否包含在指定范围内,该方法与 python find()方法一样,只不过与 find() 不同的是如果 str 不在 string中会报一个异常。

语法:str.index(str, beg=0, end=len(string))

str1 = 'This is the reason why he is so successful.'
str2 = 'is'
print(str1.index(str2))	# 运行结果:2
print(str1.index(str2,4))	# 运行结果:5
print(str1.index(str2,8,40))	# 运行结果:26

4、rindex() 返回子字符串 str 在字符串中最后出现的位置,如果没有匹配的字符串会报异常。

语法:str.rindex(str, beg=0 end=len(string))

str1 = 'This is the reason why he is so successful.'
str2 = 'is'
print(str1.rindex(str2))	# 运行结果:26
print(str1.rindex(str2,15))	# 运行结果:26
print(str1.rindex(str2,0,5))	# 运行结果:2

http://www.lryc.cn/news/365349.html

相关文章:

  • 【研发日记】Matlab/Simulink软件优化(二)——通信负载柔性均衡算法
  • Python 设计模式(行为型)
  • 电商API商品数据采集接口||助力电商企业采集商品大数据提高开发效率
  • Day34 事件聚合器实现消息过滤功能
  • 前端 JS 经典:Reflect 本质
  • accelerate 的一个tip:early stopping 处可能存在的bug
  • 企业数据挖掘建模平台极简建模流程
  • 使用pkg打包了一个使用了sqlite3的nodejs项目,启动后闪退
  • 网络编程(UPD和TCP)
  • cesium 之 flyTo、setView、lookat
  • 超速解读多模态InternVL-Chat1.5 ,如何做到开源SOTA——非官方首发核心技巧版(待修订)
  • Vue 组件_动态组件+keep-alive
  • 深入理解Redis:多种操作方式详解
  • stm32太阳能追光储能系统V2
  • Docker笔记-解决非交互式运行python时print不输出的问题
  • 06- 数组的基础知识详细讲解
  • CentOS6系统因目录有隐含i权限属性致下属文件无法删除的故障一例
  • 【视频转码】ZLMediaKit漏洞报告的问题
  • 100道大模型面试八股文
  • 【ARM Cache 及 MMU 系列文章 6.2 -- ARMv8/v9 Cache 内部数据读取方法详细介绍】
  • 使用Vue.js将form表单传递到后端
  • 6、架构-服务端缓存
  • 服务器遭遇UDP攻击时的应对与解决方案
  • 美团发布2024年一季度财报:营收733亿元,同比增长25%
  • sql注入-布尔盲注
  • docker-compose部署 kafka 3.7 集群(3台服务器)并启用账号密码认证
  • LeetCode-704. 二分查找【数组 二分查找】
  • Rust 性能分析
  • Gradle和Maven都是广泛使用的项目自动化构建工具
  • Seed-TTS语音编辑有多强?对比实测结果让你惊叹!