代码实战
import re
key2 = r"java python html"
p5 = re.compile(r"python")
p6 = re.search(p5, key2)
print(p6.group(0))
"""转化为正则表达式的实战"""
key1 = r"<html>123<body>abc<h1>hello world</h1>abc</body>123</html>"
p1 = r"(?<=<h1>).+?(?=</h1>)"#正则表达式的解释:p1="hello world "
p2 = re.compile(p1) #将正则表达式编译成为正则表达式的对象,提高效率
p3 = re.search(p2, key1) #尝试从字符串key中找到匹配的字符"hello world "
print(p3.group(0)) #返回整个匹配的字符串
key3 = r"<h1>hello</h1>"
# p7 = re.compile(r"(?<=<h1>).+?(?=</h1>)")
p7 = re.compile(r"<h1>.+?</h1>") #将正则表达式编译成为正则表达式的对象
print(p7.findall(key3))#findall函数,如匹配到则返回一个列表,如没匹配到则返回一个空列表,不会报错
key4 = r"http://baidu.com and https://souhu.com"
p8 = re.compile(r"https*://") #同时匹配http和https
print(p8.findall(key4))
key5 = r"lalala<hTml>world</Html>hehehe" # 前端程序员大小写混写
p9 = r"<[Hh][Tt][Mm][Ll]>.+?</[Hh][Tt][Mm][Ll]>" #大小写均可匹配的正则表达式
p10 = re.compile(p9)
print(p10.findall(key5))
输出结果
hello world
python
['<h1>hello</h1>']
['http://', 'https://']
['<hTml>world</Html>']
[]
Process finished with exit code 0