摘要: 字符串查找API

字符串处理相关API

字符串是7种序列类型中的一种。
除了序列的操作函数,比如len()来求字符串长度之外,Python还为字符串提供丰富到可以写个编辑器的API.

查找类API

首先,下面的查找API都是为了查找位置,或者查一共有几次这样的操作。
如果只是想判断一个字符串是不是另一个字符串的子串的话,使用序列的in运算符就可以了。
例:

str1 = "hahahahaha,heiheihei"if 'haha' in str1:print('haha is a substring of '+str1)
else:print('haha is NOT a substring of '+str1)

数数有多少个匹配的字符串 - count函数

原型:str.count(sub[, start[, end]])

  • sub:要查找的子字符串
  • start:起始位置
  • end:结束位置

字符串的count函数可以数出来有多少次匹配,我们看个例子,有5个ha和3个hei

str1 = "hahahahaha,heiheihei"print(str1.count('ha'))
print(str1.count('haha'))

输出为5和2.
haha只能匹配两次。

再加上扩展参数:

print(str1.count('ha',1))
print(str1.count('ha',0,5))

不抛异常的查找 find和rfind

find函数的行为是,如果能找到,则返回在序列中的坐标,如果找不到,则返回-1. rfind是从右向左查找。我们来看例子:

print(str1.find('haha'))
print(str1.rfind('haha'))

输出值为0和6.

找不到的例子:

print(str1.find('hoho'))
print(str1.rfind('hi'))

输出值都是-1.

完整形式:

  • str.find(sub[, start[, end]])
  • str.rfind(sub[, start[, end]])

会抛异常的查找:index和rindex

index和rindex的功能与find和rfind基本上一致,除了在找不到时会抛出ValueError异常而不是返回-1.

例:

>>> str1 = "hehe"
>>> str1.index('ha')
Traceback (most recent call last):File "<stdin>", line 1, in <module>
ValueError: substring not found

所以我们需要加try...except语句来处理之:

try:str1.index('hoho')
except ValueError:print('hoho cannot be found in '+str1)

从头查找和从尾查找 startswith, endswith

有时候,我们希望做从头匹配或者匹配尾部。这时候就要用到startswith函数和endswith函数。例:

print(str1.startswith('ha'))
print(str1.endswith('hei'))

这两个返回值均为True.

如果需要更复杂的匹配,还是需要正则表达式。与Java等语言不同,Python中的正则表达式有专门的模块,字符串的API不负责这个事情。

小结

  • 判断字符串是不是在别一个串中能找到:in
  • 判断是否左匹配:startswith
  • 判断是否右匹配:endswith
  • 数数能匹配多少次:count
  • 不抛异常的求匹配位置:find,rfind
  • 会抛异常的求匹配位置:index,rindex

原文链接

干货好文,请关注扫描以下二维码:

Python API快餐教程(1) - 字符串查找API相关推荐

  1. python基础(一)字符串查找

    (2)字符串查找 .count() 功能:计算指定的字符在字符串里出现的次数有多少 格式:字符串.count(查找字符串[,开始索引[,结束索引]]) 返回值:整数 .find() 功能与index( ...

  2. 淘宝api开发教程(淘宝API测试地址,参数说明)

    API一词相信每一个开发人员都不陌生,API是软件系统之间或不同组成部分之间进行连接的约定.特别是移动应用程序和微服务架构的不断普及,API就是他们成功背后的功臣,这个时候如何设计和开发API就显得格 ...

  3. jquery 字符串查找_Python Appium 库IOS特有元素查找API介绍

    IOS自动化测试系列文章: 一文带你趟过mac搭建appium测试环境的遇到的坑 appium 实现简易IOS  app自动化测试demo 今天分享的是python appium库中IOS元素查找特定 ...

  4. python编写字符串查找函数_Python 简明教程 --- 8,Python 字符串函数

    好代码本身就是最好的文档.当你需要添加一个注释时,你应该考虑如何修改代码才能不需要注释. -- Steve McConnell 目录 字符串有很多操作函数,所以,这里我们专门用一节来介绍这些函数. 建 ...

  5. 顺丰快递单号查询接口物流路由跟踪信息快递鸟api对接教程

    目录 1.完成前期准备工作 2.API接口 3.请求参数(Headers) 4.请求参数(Body) 5.返回参数(Return) 6.请求完整报文(示例) 7.成功返回报文(示例) 8.失败返回报文 ...

  6. 基于百度地图的python开发服务端_python编程之API入门: (一)使用百度地图API查地理坐标...

    在网络编程中,我们会和API打交道.那么,什么是API?如何使用API呢?本文分享了一下我对API的理解以及百度地图API的使用. API是"Application Programming ...

  7. Python基础教程:字符串的常用操作

    在Python中字符串的表达方式有四种 一对单引号 一对双引号 一对三个单引号 一对三个双引号 a = 'abc' b= "abc" c = '''abc''' d = " ...

  8. python字符串函数运算_Python入门教程2. 字符串基本操作【运算、格式化输出、常用函数】 原创...

    前面简单介绍了python基本运算,这里再来简单讲述一下Python字符串相关操作 1. 字符串表示方法 >>> "www.jb51.net" #字符串使用单引号 ...

  9. Azure Application Insights REST API使用教程

    本文是Azure Application Insights REST API的简单介绍,并会包含一个通过Python消费API的示例/小工具. 新加入的team中的一项工作是制作日常的运维报表,制作方 ...

最新文章

  1. 记录:自制的小说推荐程序(一)
  2. mysql 高级语法,SQL 语法高级
  3. VTK:PolyData之DistancePolyDataFilter
  4. tiny4412(用户手册及芯片手册)
  5. YouTube怎么判断影片内含侵权内容? 解析Content ID内容识别系统的原理及功能
  6. SQL Server命令行
  7. directx修复工具win7_win7提示explorer.exe应用程序错误的解决方法
  8. Makefile .PHONY用法
  9. ios开发环境搭建教程
  10. msfconsole学习
  11. python 将中文变为拼音_python如何使用pypinyin将中文转换为拼音,详细介绍
  12. 一语道破项目管理知识体系42个过程
  13. MAC下网易MuMu模拟器调试ReactNative
  14. SpringBoot整合微信扫码登录
  15. Android关闭输入法
  16. 用计算机模拟无理数e的计算,动图讲解自然常数e,无理数e带你发现数学之美!...
  17. Win8.1系统所有的路径都无法更改文件夹名称
  18. C++中sort()排序函数应用
  19. 最小二乘法拟合椭圆——MATLAB和Qt-C++实现
  20. (C语言)有一篇文章,共有3行文字,每行有80个字符。要求统计出其中英文大写字母,小写字母,数字,空格,其他字符的个数

热门文章

  1. 网站如何进行渠道跟踪_网站如何进行搜索引擎优化?
  2. jenkins 插件目录_10 个 Jenkins 实战经验,助你轻松上手持续集成
  3. signature=c0b9be9cdeb0a9e14dbbc8edc1d4c0e5,NRZ-PM-QPSK 16
  4. python post form data_python实现发送form-data数据的方法详解
  5. hadoop2.8配置_Hadoop2.8.2安装与配置(单机)
  6. java多次点击时事件_click事件的累加绑定,绑定一次点击事件,执行多次
  7. java乘法表_Java中四种9*9乘法表的实现方式(附代码)
  8. oracle resize什么意思,Oracle调整表空间大小resize
  9. ios jsonkit 报错_iOS开源项目:JSONKit
  10. AI「抄」代码无罪?GitHub Copilot拿用户的开源代码改一改就去挣钱!