用户登录
用户注册

分享至

正则表达式详细图文举例介绍

  • 作者: 九姑娘40866758
  • 来源: 51数据库
  • 2021-07-03

文章目录

    • 正则实用网址
    • 特殊符号功能说明
    • 正则快捷表达式
      • 正则快捷表达式取反
    • 分组-GROUP()
      • 非捕获分组
    • 回溯引用
    • 环视 (先行断言,后行断言)
      • 正向先行断言
      • 反向先行断言
      • 正向后行断言
      • 反向后行断言

正则实用网址

 
点击进入-正则测试网址
在网站中输入表达式和文本,会自动标蓝匹配的字符串!

再提供一个练习网址
正则练习题

 
 
 
 
 

特殊符号功能说明

中括号 [] :匹配中括号中出现的字符一次

横杠 - :表示区间 0-9 ,a-z

斜杠 \:转义字符 想匹配横杠等特殊字符,就需要转义

shift+6 ^
放在方括号[]中:非, 取反,不匹配其中字符


不放在方括号[]中:开始字符

开始与结束字符: ^$:在开头结尾处匹配字符串

任意字符 .:可以匹配除了换行符\n的任意一个字符

可选字符 ?:出现一次或0词 (可有可无)

指定个数{}:指定出现次数


默认贪婪模式(总想匹配更多的O),加上?非贪婪模式,匹配到2个O就不继续匹配。

匹配一个以上的o,开区间

+* (速写)
+ 等价于{1,} 大于等于一个
*等价于{0,} 大于等于零个

 
 
 
 
 

正则快捷表达式

\s 匹配空白(空格,制表,换行)

\b 匹配单词边界

\d 匹配数字
\w 匹配字母、数字、下划线

正则快捷表达式取反

字母变大,则取反

数字取反:非数字

 
 
 
 

分组-GROUP()

用于提取数据,使用括号给匹配串分组

捕获四个分组,在具体编程语言中会有相关函数输出group[i]

| 或者条件,多与分组连用

非捕获分组

匹配不捕获, (?:表达式)

回溯引用

引用之前匹配到的分组 \1 ( \+分组编号)

环视 (先行断言,后行断言)

正向先行断言

(?=表达式) :在某个位置向右看,所在位置右侧必须匹配表达式

匹配粉色的Q 中的粉色的,不匹配Q。

反向先行断言

(?!表达式) :在某个位置向右看,所在位置右侧必须没有该表达式


匹配粉色的XX 中的粉色的,不匹配XX,并且XX不能为Q。

正向后行断言

(?<=表达式) 在某个位置向左看,所在位置必须能匹配表达式

反向后行断言

(?<!表达式) 在某个位置向左看,所在位置必须不能匹配该表达式
 
结合一下

软件
前端设计
程序设计
Java相关