1、search(pattern, string, flags=0) 在一個字符串中查找匹配
2、findall(pattern, string ,flags=0) 找到匹配,返回所有匹配部分的列表
3、sub(pattern, repl, string , count=0, flags=0) 將字符串中匹配正則表達式的部分替換為其他值
4、split(pattern, string ,maxsplit=0, flags=0) 根據(jù)匹配分割字符串,返回分隔符串組成的列表
用法:
In [2]: str1='imooc video=1000'
In [3]: str1.find('1000')#可以查找出索引值
In [4]: str1='imoocvideo=1000'
In [5]: str1.find('1000')
In [6]: info=re.search(r'\d+',str1)#'\d'代表任意一個數(shù)字,'+'可以匹配數(shù)字一次或者無限次,只能匹配最前面的
Out[7]: <_sre.SRE_Match at 0xb6bf9b48>
In [2]: str1='java=1000,python=9090'
In [3]: info=re.findall(r'\d+',str1)#找到所有匹配的字符串,并把它們放到一個列表中
In [5]: sum([int(x) for x in info])
In [25]: def add1(match):#傳入的match是一個字符串對象, ....: val=match.group()#匹配的字符串 ....: num=int(val)+1 #強制轉(zhuǎn)換 ....: return str(num)#強制轉(zhuǎn)化 In [28]: info=re.sub(r'\d+',add1,str4)#sub就是替換字符串和函數(shù)
Out[29]: 'python video =10001'
In [35]: str6='imooc:java c++ python c#' In [36]: re.split(r':| ',str6)#split用來分割字符串,':|'的意思是只要看見冒號和空格就會分割成一部分 Out[36]: ['imooc', 'java c++ python c#'] In [37]: re.split(r':| ',str6) Out[37]: ['imooc', 'java', 'c++', 'python', 'c#']
|