正则表达式

1. 正则表达式语法

正则表达式,是由普通字符和特殊字符组成的文字模式。正则表达式作为一个模板,将某个字符模式与所搜索的字符串进行匹配。常见的正则表达式使用字符:

普通字符

  • ABC\] 匹配\[...\]中的所有字符。如/\[aeiou\]/g 会匹配出字符串中的所有aeiou字符

  • A-Z\] 匹配所有大写字母,/\[A-Z\]/g

  • \\s\\S\] 匹配所有。\\s匹配所有空白符,包括换号。\\S匹配所有非空白符

非打印字符

  • \cx 匹配由Control+x操作,或回车符
  • \f 匹配翻页
  • \n 匹配换号
  • \r 匹配回车
  • \s 匹配所有空白字符,包括空格、制表符、翻页符等,相当于[\f\n\r\v]
  • \S 匹配所有非空白字符
  • \t 匹配制表符
  • \v 匹配垂直制表符

特殊字符

  • $ 字符串末尾
  • () 字符串开始和结束位置(匹配(和)需要使用(、))
    • 匹配0次或多次
    • 匹配一次或多次,至少一次
  • ?匹配0次或一次
  • . 匹配换行符\n之外的所有单个字符
  • 匹配一个中括号表达式的开始

  • | 两项之中选择一个

限定符

    • 0次、一次、或多次
    • 1次或多次
  • ? 0次或一次
  • {n} 匹配连续出现n次,/oo{2}/g,匹配oo连续出现两次的位置
  • {n,} 至少出现n次,/oo{2,}/g,匹配oo至少连续出现2次以上
  • {n,m} 至少出现n次,最多m次

定位符

  • ^ 匹配目标字符串的开始位置
  • $ 目标字符串的尾部
  • \b 匹配字符的边界
  • \B 匹配非字边界。

选择

  • | 用圆括号 () 将所有选择项括起来,相邻的选择项之间用 | 分隔

反向引用

反向引用,是用来匹配识别匹配的内容与第一个分组匹配的内容一致,表达式是 \1

相关推荐
Maggie_ssss_supp12 小时前
Linux-正则表达式
linux·运维·正则表达式
IT陈图图1 天前
基于 Flutter × OpenHarmony 图书馆管理系统之构建借阅记录模块
flutter·正则表达式·openharmony
WHOVENLY1 天前
揭秘正则表达式的基础语法与应用
开发语言·javascript·正则表达式
IT陈图图3 天前
基于 Flutter × OpenHarmony 的正则表达式测试器开发实战
flutter·正则表达式·openharmony
不平衡的叉叉树4 天前
我们遇到了正则表达式的灾难性回溯问题
java·正则表达式
Meteors.4 天前
正则表达式及其常见使用(Kotlin版)
正则表达式
至此流年莫相忘5 天前
正则表达式之捕获分组——Python篇
python·正则表达式
西红市杰出青年5 天前
crawl4ai------AsyncPlaywrightCrawlerStrategy使用教程
开发语言·python·架构·正则表达式·pandas
噎住佩奇5 天前
正则表达式(Regex)入门
运维·正则表达式
Irene19916 天前
JavaScript 正则表达式 API 总结
正则表达式