🌟 re.compile(pattern)
是什么?
它的作用是:
👉 把一个正则表达式字符串变成一个可以重复使用的“工具”(叫做正则对象)
🔨 通俗解释:你在用“模板”造东西
你可以把它想象成:
📄
pattern
是一个图纸
🏭re.compile(pattern)
是把图纸交给工厂造出一个“工具”
🧰 你得到的工具可以重复用来“检查”或“提取”内容
🧪 举个简单例子
👎 没有 compile
你每次都重新拿图纸,临时造工具(低效):
import re
text = "I have diabetes and cancer."
result = re.findall(r"diabetes|cancer", text)
print(result) # ['diabetes', 'cancer']
👍 用了 compile
(一次造好工具,反复用)
import re
text = "I have diabetes and cancer."
# 1. 先造一个正则工具
pattern = re.compile(r"diabetes|cancer")
# 2. 拿这个工具去检查文本
result = pattern.findall(text)
print(result) # ['diabetes', 'cancer']
🧠 为什么要用它?
假设你要在几百段文字里查找相同的东西,比如:
for text in all_texts:
result = re.findall(r"diabetes|cancer", text)
这样每次循环都重新造工具,浪费性能!
✅ 正确做法:
pattern = re.compile(r"diabetes|cancer")
for text in all_texts:
result = pattern.findall(text) # 快!不会重复编译
✅ 总结一句话
你写的 | 它的作用 |
---|---|
re.compile(r"正则表达式") | 编译成一个可以重复使用的“正则对象” |