Python 高级
正则表达式基础
使用 re 模块进行模式匹配
- 掌握正则基本语法
- 使用 re.match/search/findall
- 常用元字符和量词
re 模块基础
示例代码(可运行)
Python 0%
常用元字符
示例代码(可运行)
Python 0%
分组和替换
示例代码(可运行)
Python 0%
⚠️原始字符串
正则前加 r 前缀,比如 r"\d",否则 Python 会先把 \d 当成转义字符解析。
预测输出
import re
print(re.findall(r"\d+", "a1b22c333"))找 Bugmatch只从字符串开头匹配,abc开头不是数字所以返回None。
import re
print(re.match(r"\d+", "abc123"))
填空题填写空白处的代码
import re
print(re.findall(r"\d", "a1b22")) # ["1","22"]
选择题
匹配邮箱用哪个函数?
资深工程师加餐
底层原理 · 大厂视角 · 工程经验,点卡片展开
@decorator 写在函数定义上方,它在「模块加载、函数被定义时」就执行一次,把原函数包装成新函数;之后每次调用,走的都是包装后的版本。带参数的装饰器本质是三层嵌套(外层收参数、中层收函数、内层收调用参数)。务必用 functools.wraps 保留原函数名和文档,否则调试栈和日志里全是 wrapper。
挑战任务
正则挑战
简单+50 XP
提取文本中所有邮箱地址。
正则挑战
Python 0%
2 个测试用例
课后作业
密码强度
中等+20 XP
用正则验证密码:至少8位含大小写和数字。
密码强度
Python 0%
1 个测试用例