在接口中使用正则一般分为三步spa
第一步:先生成一个对象实例对象
好比 pattern = re.compile('hello') 这时就会生成一个去匹配'hello'字符串的对象接口
第二步:使用生成的对象去匹配文本字符串
好比:match = pattern.match('hello word') 匹配成功返回匹配到的对象,匹配失败返回Nonestring
match是匹配开头,若是开头不匹配,直接返回None 若是想要匹配全部的字符串,能够使用search,都是匹配一个,danshisearch能够全局匹配it
re.search(r'\d+','hhs12kak2233jjj').group() 只能够匹配到一个符合条件的字符串class
第三步 使用match.group()将匹配到的字符串分组出来 分组以前先判断匹配到的值是否返回的是None方法
好比:match.group()word
经常使用的一些re方法co
re.split 将匹配到符合条件的字段删除
re.split(r'hello','hell word jjj hello')
得出结果:['', ' word hah ', '']
re.findall 匹配到全部符合条件的字段,列表形式返回
re.findall('r'hello','hell word jjj hello'')
得出结果:['hello', 'hello']
re.sub 将匹配到的字符串替换掉
re.sub(r'\s+','-',s) 第一个是匹配的规则,第二个是须要替换成的新字符,第三个是字符串
re.subn 会返回替换的次数
用正则去匹配一个邮箱
re.match(r'^[0-9a-zA-Z_]{0,19}@[0-9a-zA-Z]{1,13}\.[com,cn,net]{1,3}$',text)