import re
def reMatch():
pattern = "[Pp]ython"
str1 = "天不生python,世间万古如长夜"
str2 = "python一出谁与争疯"
str3 = "Python一出谁与争疯"
resobj = re.match(pattern, str1)
resobj = re.match(pattern, str2)
resobj = re.match(pattern, str3)
print(resobj)
def reSearch():
pattern = "[Pp]ython"
str1 = "天不生python,世间万古如长夜"
str2 = "python一出谁与争疯"
str3 = "天不生python,世间万古如长夜;农不务Python,地头一篇荒草丛;劳资不学拍森,劳资吃什么!"
resobj = re.search(pattern, str1)
resobj = re.search(pattern, str2)
resobj = re.search(pattern, str3)
print(resobj)
def reFindall():
pattern = "[Pp]ython|拍森|派森"
str1 = "天不生python,世间万古如长夜"
str2 = "Python一出谁与争疯"
str3 = "天不生python,世间万古如长夜;农不务Python,地头一篇荒草丛;劳资不学拍森,劳资吃什么!派森真牛逼~"
reslist = re.findall(pattern, str1)
reslist = re.findall(pattern, str2)
reslist = re.findall(pattern, str3)
print(reslist)
'''
re.sub(pattern, repl, string, count=0, flags=0)
参数:
pattern : 正则中的模式字符串。
repl : 替换的字符串,也可为一个函数。
string : 要被查找替换的原始字符串。
count : 模式匹配后替换的最大次数,默认 0 表示替换所有的匹配
'''
def reSub():
pattern = "[Pp]ython|拍森|派森"
str1 = "天不生python,世间万古如长夜;农不务Python,地头一片荒草丛;劳资不学拍森,劳资吃什么!派森真牛逼~"
resstr = re.sub(pattern, "【大拍森】", str1)
print(resstr)
def groupAndSpan():
pattern = "[Pp]ython"
str1 = "python一出谁与争锋"
print(re.match(pattern, str1).group())
print(re.match(pattern, str1).span())
def searchSpan():
pattern = "[Pp]ython"
str1 = "一出python,谁与争锋"
print(re.search(pattern, str1).span())
def groupAndSpanWithGroupIndex():
pattern = "(.*)( are )(.*)"
str1 = "Cats are smarter than dogs"
print(re.match(pattern, str1))
print(re.match(pattern, str1).group())
print(re.match(pattern, str1).group(1))
print(re.match(pattern, str1).group(2))
print(re.match(pattern, str1).group(3))
print(re.match(pattern, str1).span())
print(re.match(pattern, str1).span(1))
print(re.match(pattern, str1).span(2), "=====")
print(re.match(pattern, str1).span(3))
if __name__ == "__main__":
reSub()
print("main over")