8.46. re 模块 API 文档

8.46.1. API

def __init__():...

8.46.1.1. class Pattern:

def __init__(self):...
def __del__(self):...
def findall(self,subject:str,*flags)->list:...
def sub(self,repl:str,subjet:str,*count__flags)->str:...
def subn(self,repl:str,subjet:str,*count__flags)->list:...
def match(self,subject:str,*flags)->Match:...
def fullmatch(self,subject:str,*flags)->Match:...
def search(self,subject:str,*flags)->Match:...
def split(self,subject:str,*maxsplit__flags)->list:...

8.46.1.2. class Match:

def __init__(self):...
def __del__(self):...
def group(self,*n)->str:...
def groups(self)->list:...
def span(self,*group_n)->list:...
def findall(pattern:str,subject:str,*flags)->list:...
def sub(pattern:str,repl:str,subjet:str,*count__flags)->str:...
def match(pattern:str,subject:str,*flags)->Match:...
def fullmatch(pattern:str,subject:str,*flags)->Match:...
def search(pattern:str,subject:str,*flags)->Match:...
def compile(pattern:str,*flags)->Pattern:...
def escape(pattern:str)->str:...
def subn(pattern:str,repl:str,subjet:str,*count__flags)->list:...
def split(pattern:str,subject:str,*maxsplit__flags)->list:...

8.46.2. Examples

8.46.2.1. sub.py

import re
phone = "2004-959-559 # this is a phone number"
num = re.sub('#.*$', "", phone)
print("the phone number is: ", num)
num = re.sub('\\D', "", phone)
print("the phone number is: ", num)

8.46.2.2. findall.py

import re
pattern = re.compile('(\\d{4})-([1-9]|1[0-2])-([1-9]|[1-2][0-9]|3[01])\\b')
s = 'date: 2020-1-1, 2022-12-22, 2018-3-31. Wrong format: 2031-13-31, 2032-12-33 ...'
result1 = pattern.findall(s)
print(result1)
result2 = pattern.sub('\\1',s)
print(result2)

8.46.2.3. search.py

import re
print(re.search('www', 'www.runoob.com').span(0))
print(re.search('com', 'www.runoob.com').span(0)) 

8.46.2.4. match.py

import re

line = "Cats are smarter than dogs"

m = re.match("(.*) are (.*?) .*", line, re.M | re.I)

if m:
    print("matchObj.group(0) : ", m.group(0))
    print("matchObj.group(1) : ", m.group(1))
    print("matchObj.group(2) : ", m.group(2))
else:
    print("No match!!")