正则表达式

https://www.bilibili.com/video/BV1da4y1p7iZ

1. 功能

  1. 匹配特定规则的字符串

2. 应用

  1. 词法分析器
  2. 登录的注册表单判断密码复杂度
  3. 爬虫

3. 语法

无符号:匹配有这个字符串的字符串。例如,正则表达式abc匹配文中有abc的字符串。

限定符

  1. ?:问好前面的字符匹配0或1次
  2. *:星号前面的字符匹配0或n次(n>=1)
  3. +:加号前面的字符匹配1或n次(n>=2)
  4. {m, n}:大括号前面的字符匹配m到n次
  5. (ab):小括号表示将多个字符看成一个整体

或运算

  1. a|b:a或者b

字符类

  1. []:中括号表示指定范围
  2. [a-z]+:匹配的字符串中的字符只能来自a-z,加号表示匹配一次或多次
  3. [^0-9]+:匹配的字符串中的字符不能来自0-9(不能是数字)

元字符

  1. 反斜杠开头\,转义
  2. \d:数字
  3. \w:单词字符,包括英文字母、数字和下划线
  4. \s:空白字符,包括tab和换行符
  5. \D:非数字
  6. \W:非单词字符
  7. \S:非空白字符
  8. \b:表示单词边界。它匹配一个单词的开始或结束的位置,而不匹配任何实际的字符。

特殊字符

  1. .:英文句号代表除换行符外的所有字符
  2. ^:匹配行首,^a只会匹配行首的a
  3. $:匹配行尾,a$只会匹配行尾的a

贪婪和懒惰

  1. 贪婪(默认):匹配结果尽可能多
  2. 懒惰:匹配结果尽可能少,在限定符后面加?切换懒惰模式
相关推荐
Patrick在香港8 小时前
Claude Prompt 香港场景:公文里「今日」落在 6 个日历日上,「翌日」锚错了 5 天
python·自然语言处理·正则表达式·claude·数据清洗
梦帮科技2 天前
Next.js 16 模块化单体实战:App Router、领域模块与 Route Handler 分层
css·数据结构·链表·正则表达式·node.js·json·html5
yume_sibai8 天前
正则表达式完全指南(基础语法 + 实战应用 + 性能优化 + 最佳实践)
开发语言·正则表达式·c#
研☆香9 天前
js中使用的正则表达式
开发语言·javascript·正则表达式
2601_9622935314 天前
浅学python | 正则表达式集锦
正则表达式·字符串匹配·python知识·浅学python·ip地址检查
2601_9622955814 天前
Python中正则表达式的知识汇总分享
python·正则表达式·模块·语法·匹配
启观川14 天前
Python基础-第 16 章 综合案例:客户信息管理系统
开发语言·笔记·python·正则表达式
2601_9622940514 天前
Python 操作 Word:如何查找、替换和批量修改文本
python·正则表达式·word·文档处理·查找替换
for_ever_love__19 天前
python基础语法学习: 正则表达式
python·学习·正则表达式
asdfg125896320 天前
一个例子通俗理解Java中正则表达式用法
java·正则表达式