Python字符串操作之字符串搜索与替换
来源:互联网 发布:qq会员永久软件 编辑:程序博客网 时间:2024/05/25 05:37
11、字符串中的搜索和替换
11.1 str.find():正序字符串查找函数
函数原型:
str.find(substr [,pos_start [,pos_end ] ] )
返回str中第一次出现的substr的第一个字母的标号,如果str中没有substr则返回-1,也就是说从左边算起的第一次出现的substr的首字母标号。
参数说明:
str:代表原字符串
substr:代表要查找的字符串
pos_start:代表查找的开始位置,默认是从下标0开始查找
pos_end:代表查找的结束位置
#查找字符串'dd'第一次出现的位置>>> 'acddl123'.find('dd')2#查找第一次出现空格的位置>>> 'acdd l1 23'.find(' ')4#指定查找的起始位置和结束位置>>> 'acdd l1 23'.find(' ',3 ,6)4#未找到返回-1>>> 'acdd l1 23'.find(' ',5 ,6)-1#只指定查找的起始位置(不能只指定查找的结束位置)>>> 'acdd l1 23'.find(' ',5 )7
11.2 str.index():正序字符串查找函数
index()函数类似于find()函数,在Python中也是在字符串中查找子串第一次出现的位置,跟find()不同的是,未找到则抛出异常。
函数原型:
str.index(substr [, pos_start, [ pos_end ] ] )
参数说明:
str:代表原字符串
substr:代表要查找的字符串
pos_start:代表查找的开始位置,默认是从下标0开始查找
pos_end:代表查找的结束位置
#查找字符串中第一次出现空格的位置>>> 'acdd l1 23'.index(' ')4#未找到时抛出ValueError异常>>> 'acdd l1 23'.index(' ')Traceback (most recent call last): File "<stdin>", line 1, in <module>ValueError: substring not found#指定起始查找位置>>> 'acdd l1 23'.index(' ',5)7#指定起始查找位置和结束查找位置>>> 'acdd l1 23'.index(' ',5,9)7
11.3 str.rfind():倒序字符串查找函数
函数原型:
str.rfind( substr [, pos_start [,pos_ end ] ])
返回str中最后出现的substr的第一个字母的标号,如果str中没有substr则返回-1,也就是说从右边算起的第一次出现的substr的首字母标号。
参数说明:
str:代表原字符串
substr:代表要查找的字符串
pos_start:代表查找的开始位置,默认是从下标0开始查找
pos_end:代表查找的结束位置
#查找最后一次出现字母'd'的位置>>> 'adsfddf'.rfind('d')5#指定查找的开始和结束位置查找>>> 'adsfddf'.rfind('d',3,5)4#指定开始查找的位置进行查找>>> 'adsfddf'.rfind('d',3)5#未找到返回-1>>> 'adsfddf'.rfind('d6')-1
11.4 str.rindex():倒序字符串查找函数
rindex()函数类似于rfind()函数,在Python中也是在字符串中倒序查找子串最后一次出现的位置,跟rfind()不同的是,未找到则抛出异常。
函数原型:
str.rindex(substr [, pos_start, [ pos_end ] ] )
参数说明:
str:代表原字符串
substr:代表要查找的字符串
pos_start:代表查找的开始位置,默认是从下标0开始查找
pos_end:代表查找的结束位置
#倒序查找最后一次出现字母'd'的位置>>> 'adsfddf'.rindex('d')5#指定查找的开始和结束位置开始查找>>> 'adsfddf'.rindex('d',3,6)5>>> 'adsfddf'.rindex('fd',3,6)3#未找到抛出ValueError异常>>> 'adsfddf'.rindex('d6')Traceback (most recent call last): File "<stdin>", line 1, in <module>ValueError: substring not found
11.5 str.replace():字符串替换函数
函数原型:
str.replace(oldstr, newstr [, count])
把str中的oldstr替换成newstr,如果指定了count参数,表示替换最多不超过count次。如果未指定count参数,表示全部替换,有多少替换多少。
#指定替换次数>>> 'aabbdssdf12sdaacddaa'.replace('aa','-',2)'-bbdssdf12sd-cddaa'#不指定替换次数,将字符串中全部\n去掉,可以理解去全部替换为None了>>> 'a\nsd\r\t\n'.replace('\n','')'asd\r\t'#将字符串中全部的'.'去掉>>> 'a....sd\r\t....\n'.replace('.','')'asd\r\t\n'
11.6 str.count():计算字符串中某个子串的个数
函数原型:
str.count(substr, [start, [end] ])
在字符串str中统计子串substr出现的次数,如果不指定开始位置start和结束位置end,表示从头统计到尾。
#统计子串'aa'在原字符串中出现的总次数>>> 'aadgdxdfadfaadfgaa'.count('aa')3>>> 'aadaadfgaa'.count('d')2#从下标为3的位置开始统计子串'aa'出现的次数>>> 'aadgdxdfadfaadfgaa'.count('aa',3)2#在下标为3和6的位置开始统计子串'aa'出现的次数,但不包括6>>> 'aadgdxdfadfaadfgaa'.count('aa',3,6)0
11.7 str.expandtabs():将tab字符替换成空格
函数原型:
str.expandtabls([tabsize])
将str字符串中的tab字符替换成tabsize个空格,默认是8个空格。
#使用默认个数的空格替换字符串中的tab字符>>> 'a v f'.expandtabs()'a v f'#将tab字符替换成2个空格>>> 'a v f'.expandtabs(2)'a v f'
- Python字符串操作之字符串搜索与替换
- Python字符串操作之字符串搜索与替换
- Python字符串操作之字符串搜索与替换
- 技巧-搜索与替换字符串
- python字符串截取与替换
- bash 进阶之变量替换与字符串操作
- Python字符串操作之字符串分割与组合
- python字符串搜索与匹配
- python--字符串操作(删除,替换)
- python字符串连接,截取,替换操作
- python--字符串操作(删除,替换)
- 字符串查找替换操作
- freemarker字符串替换操作
- python 字符串替换
- Python字符串的替换
- python 字符串替换
- python 字符串替换
- python 字符串替换
- C++多态调用和继承内存分布
- POJ2909
- 19、C语言和设计模式(桥接模式)
- BootStrap模态框
- 九度oj 1461
- Python字符串操作之字符串搜索与替换
- (15.1.13)阅读理解
- [欧拉计划]Problem 1.Multiples of 3 and 5
- 二叉搜索树与双向链表
- TCP三次握手,及其背后的缺陷
- ZOJ2562
- 机器视觉开源代码集合
- HTML与CSS_基础 翁恺 笔记(2015.8.10更新)
- ContentProvider简结