正则表达式极速教程
2026/5/26 16:33:02 网站建设 项目流程

正则表达式极速教程

      • 一、最基础的3个符号
      • 二、字符匹配(最常用)
      • 三、数量表示(核心)
      • 四、实战练习
        • 匹配邮箱
        • 匹配手机号(简单版)
        • 匹配日期 YYYY-MM-DD
      • 五、高级技巧
      • 六、常用案例速查
      • 七、Python 代码示例
      • 八、在线测试工具

一、最基础的3个符号

.# 匹配任意单个字符(除换行符)^# 匹配开头$# 匹配结尾

示例
a.c→ 匹配 “abc”, “a1c”, “a c”


二、字符匹配(最常用)

[abc]# 匹配a或b或c[a-z]# 匹配小写字母[0-9]# 匹配数字[^abc]# 匹配不是a/b/c的字符\d# 等价于 [0-9]\w# 单词字符:字母+数字+下划线\s# 空白字符:空格、tab等

三、数量表示(核心)

*# 0次或多次+# 1次或多次?# 0次或1次{n}# 恰好n次{n,}# 至少n次{n,m}# n到m次

示例
a+→ “a”, “aaa”
\d{3}→ 匹配3个数字


四、实战练习

匹配邮箱
\w+@\w+\.\w+

user@qq.com

匹配手机号(简单版)
1[3-9]\d{9}

13812345678

匹配日期 YYYY-MM-DD
\d{4}-\d{1,2}-\d{1,2}

2024-01-15


五、高级技巧

|# 或:a|b 匹配a或b()# 分组:提取匹配的部分(?:)# 非捕获分组(不提权)

分组示例

(\d{3})-(\d{8}) # 匹配电话并提取区号和号码

六、常用案例速查

需求正则
IP地址\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}
中文字符[\u4e00-\u9fa5]
空白行^\s*$
python注释行^\s*#.*$
HTML标签<[^>]+>

七、Python 代码示例

importre text="我的电话是13812345678"phone=re.findall(r'1[3-9]\d{9}',text)print(phone)# ['13812345678']# 替换new_text=re.sub(r'\d+','***',"密码123456")print(new_text)# 密码***

八、在线测试工具

  • regex101.com(推荐,有解释)
  • regexr.com

口诀记忆
.万用,*贪婪,+至少一,?可选,[]选一个,\d数字

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询