2009年2月16日星期一

Python查找子字符串

Python提供find(sub, [, start, [,end]]))和index(sub, [, start, [,end]])这两种最常见的方法查找字符串中的子字符串。

index方法的查找速度比find快;然而,如果在字符串中没有找到所需的子字符串,index方法将抛出一个异常。如果find没有找到所需的子字符串,那么它将返回-1。find和index方法接受要查询的字符串作为它的第一个参数。被查找的字符串范围可以通过具体指定可选的开始和/或结束索引限制。只有在这索引之间的字符才会被查找。

Python也提供了rfind和rindex方法。这两个方法的工作方式和find和index很像。然而,它们是从字符串的右边开始查找子字符串。

searchStr =
"Red Blue Violet Green Blue Yellow Black"

print searchStr.find("Red")
print searchStr.rfind("Blue")
print searchStr.find("Blue")
print searchStr.find("Teal")
print searchStr.index("Blue")
print searchStr.index("Blue",20)
print searchStr.rindex("Blue")
print searchStr.rindex("Blue",1,18)

search_str.py

0
22
4
-1
4
22
22
4

Output from search_str.py code

原文:<< Python Phrasebook: Essential Code and Commands>> Searching Strings for Substrings

[声明]:限于译者水平,文中难免错漏之处,欢迎各位网友批评指正;

没有评论:

发表评论