石家庄网站开发公司电话,建设网站公司兴田德润在哪儿,自己做网站需要什么技能,成都市学校网站建设摘要#xff1a; 字符串查找API
字符串处理相关API
字符串是7种序列类型中的一种。除了序列的操作函数#xff0c;比如len()来求字符串长度之外#xff0c;Python还为字符串提供丰富到可以写个编辑器的API.
查找类API
首先#xff0c;下面的查找API都是为了查找位置#x…摘要 字符串查找API
字符串处理相关API
字符串是7种序列类型中的一种。除了序列的操作函数比如len()来求字符串长度之外Python还为字符串提供丰富到可以写个编辑器的API.
查找类API
首先下面的查找API都是为了查找位置或者查一共有几次这样的操作。如果只是想判断一个字符串是不是另一个字符串的子串的话使用序列的in运算符就可以了。例
str1 hahahahaha,heiheiheiif 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,heiheiheiprint(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 hehestr1.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原文链接干货好文请关注扫描以下二维码