字符串查找方法主要有以下几种:
用于检索指定字符串在另一个字符串中出现的次数。
如果检索的字符串不存在,则返回0,否则返回出现的次数。
语法:
str.count(sub[,start[,end]])
1 2 3 |
#检索网址中出现"/"符号出现的次数 str = "https://mp.csdn.net/mp_blog/creation/editor" print("str","中包括",str.count('/'),"个/符号") |
运行结果:
str 中包括 5 个/符号
用于检索是否包含指定的字符串,如果检索的字符串不存在,则返回-1,否则返回首次出现该字符串时的索引,语法格式如下:
str.find(sub[,start[,end]])
1 2 3 |
#检索网址中出现"/"符号出现的次数 str = "https://mp.csdn.net/mp_blog/creation/editor" print("str","中首次出现/符号的位置上索引是",str.find('/')) |
运行结果:
str 中首次出现/符号的位置上索引是 6
同find()类似,用于检索是否包含指定的字符串,
注意:使用index()方法,当指定的字符串不存在时会抛出异常。
1 2 3 |
#检索网址中出现"/"符号出现的次数 str = "https://mp.csdn.net/mp_blog/creation/editor" print("str","中首次出现/符号的位置上索引是",str,index('/')) |
运行结果:
str 中首次出现/符号的位置上索引是 6
注意:当输入的字符串在原字符串中不存在时,会产生异常,如:
1 2 |
str12 = "https://mp.csdn.net/mp_blog/creation/editor" print("str","中首次出现@符号的位置上索引是",str12.index('@')) |
运行结果:
作用与index()类似,区别在于从右边开始查找,举例
1 2 |
str58 = "@163 @126 @139" print("str58","中首次出现@符号的位置上索引是",str58.rindex('@')) |
运行结果:
str58 中首次出现@符号的位置上索引是 10
用于检索字符串是否以指定字符串开头,如果是则返回True,否则返回False。
语法:
str.startswith(prefix[,start[,end]])
start和end同上
1 2 |
str = "@jing @ruo @xing @chen" print('判断字符串",'strl,"是否以@符号开头,结果为:',strl.startswith('@')) |
运行结果:
判断字符串" @jing @ruo @xing @chen "是否以@符号开头,结果为: True
用于检索字符串是否以指定子字符串结尾,如果是返回True,否则返回False。
1 2 3 |
#检索字符串是否以@结尾 str = "@北京 @天津 @上海 @重庆" print('判断字符串"',str,'",是否以@结尾,结果是:',str) |