1. find() 查找子串,类似的还有 index() / rindex() / rfind()。rxxx 表示找最后一个子串, index 在找不到时会触发异常。
>>> "abcdefg".find("d", 1, -1)
3
>>> "abcdefg".find("d", 1, -4)
-1
>>> "aa1111aaa".rfind("aaa")
6
>>> "aa1111aaa".index("b")
Traceback (most recent call last):
File "<pyshell#87>", line 1, in <module>
"aa1111aaa".index("b")
ValueError: substring not found
2. 正则表达式匹配中的match和search
一旦你有了一个代表已编译的正则表达式的对象时,你用它来做什么呢?正则表达式对象实例有一些方法和属性。下面是其中最重要的:
match()
确定正则表达式是否匹配字符串的开头
search() 扫描字符串以查找匹配
findall() 找到所有正则表达式匹配的子字符串,并把它们作为一个列表返回
finditer() 找到所有正则表达式匹配的子字符串,并把它们以指示器的形式返回
match()和search()在没有发现匹配时返回None。如果匹配成功,一个MatchObject实例被返回,其中包含的匹配信息有:哪开始哪结束,匹配的子字符串等等。