第八重境界:飞升期

第三十三章:律令真言 (Regex)

← 上一章 | 返回宗门地图
路人
Py
师尊,我从天外天 (Web) 抓了很多经书回来。
但是里面混杂了好多乱七八糟的符号!
我想从一堆乱码里,精准地把所有的 "手机号" 和 "邮箱" 挑出来,这怎么做?
吉多
老祖
这需要修炼 律令真言 (Regular Expressions)
这是一种上古符文,晦涩难懂,但威力无穷。
只需一道符文,便能从亿万文字中,精准定位你想要的目标。

1. 绘制符文 (Pattern)

召唤 re 模块。你需要学习一些特殊的符文符号:

2. 寻找目标 (Findall)

import re

text = "师姐的电话是 13800138000,师妹的电话是 10086"

# 符文:匹配11位数字
pattern = r"\d{11}"

# 施法
phones = re.findall(pattern, text)
print(phones) # ['13800138000'] (10086不够长,被过滤了)

3. 验证真伪 (Match)

用来检查输入的账号、邮箱格式是否正确。

email = "py@sect.com"
# 符文:字符+@+字符+.+字符
if re.match(r"[\w]+@[\w]+\.[\w]+", email):
    print("邮箱格式正确")
else:
    print("这是假邮箱!")

🎮 试练:真言鉴定

任务:写一个正则表达式,匹配 "Py" 开头,后面跟着至少一个数字的字符串 (如 "Py1", "Py2026")。

真言阵法已激活...
请绘制符文...
>>>
下一章:分身千万 →