【正则表达】这个得看懂

简介: 正则表达的基础,就像做前端要了解什么是DOM一样


简介

正则表达式(Regular expression,简写为Regexes)是一种用来操作和检验字符串数据的强大工具。它相当与一串特殊的字符,用它可以转换成算法,对文本进行匹配等操作。
事实上正则表达式有其自身的一套语法,这种语法对于初学者来说显得有些晦涩难懂。尤其是其构造比较困难,称为很多入门者的障碍。但当掌握后却可以轻易的解决以前不容易解决的很多文本类问题,如验证提取等。

正则表达式基础语法

匹配不同类型的字符

字符类 匹配的字符
\d 匹配一个数字字符。等价于 [0-9]。
\D 匹配一个非数字字符。等价于 [^0-9]。
\w 匹配包括下划线的任何单词字符。等价于'[A-Za-z0-9_]'。
\W 匹配任何非单词字符。等价于 '[^A-Za-z0-9_]'。
\s 匹配任何空白字符,包括空格、制表符、换页符等等。等价于 [ \f\n\r\t\v]。
\S 匹配任何非空白字符。等价于 [^ \f\n\r\t\v]。
.(点号) 任一字符
[...] 括号中的任一字符
[^…] 非括号中的任一字符

定位控制字符

符号 描述
^ 其后的模式必须在字符串的开始处,如果是多行则在任一行的开始
$ 前面的模式必须在一行的末尾,如果是多行,则在任意行的末尾
\A 前面的模式必须在字符串的开始处;多行标志被忽略
\z 前面的模式必须在字符串的末尾处,多行标志被忽略
\Z 前面的模式必须位于字符串的末尾或位于换行符前
\b 匹配一个单词字符的开始,单词字符是[a-zA-Z0-9]中的一位
\B 匹配一个非单词边界的位置, 不在一个单词的开始

#指定重复字符

符号 描述
{n} 匹配前面的字符n次
{n,} 匹配前面的字符最少n次
{n,m} 匹配前面的字符n至m次
? 匹配前面的字符0次或1次
+ 匹配前面的字符至少1次
* 匹配前面的字符至少0次

特殊控制类

符号 描述
| 指定字符替换,即该位置可以是|两边的任一个表达式

特殊字符转义序列

符号 描述
\\ 匹配”\”
\. 匹配“.”
\* 匹配“*”
\( 匹配“(”
\) 匹配”)”
\? 匹配“?“
\+ 匹配“+“
| 匹配“|“
\{ 匹配“{“
\} 匹配“}“
\^ 匹配“^“
\$ | 匹配“$“
\n 匹配换行符
\r 匹配回车
\t 匹配Tab键
\v 匹配垂直制表符
\f 匹配换页符
\nnn 匹配一个三位八进制数指定的ASCII字符,如\103匹配C
\xnn 匹配一个二位16进制数指定的ASCII字符,例如\x43匹配C
\unnnn 匹配一个4位16进制数指定的Unicode字符
\cV 匹配一个控制字符,(如复制Ctrl+C)

更多请参考:
https://www.jb51.net/article/18526.htm

目录
相关文章
|
4月前
正则表达式的限定符、或运算符、字符类、元字符、贪婪/懒惰匹配
本文介绍了正则表达式中的限定符、或运算符、字符类、元字符以及贪婪与懒惰匹配的概念和用法。
42 5
|
7月前
|
数据采集
正则表达式
正则表达式(Regular Expression)是一种强大的文本处理工具,用于匹配、查找、匹配或替换文本中的模式或特定字符组合。它由一系列特殊字符和普通字符组成,遵循预定义的规则来描述字符串中的模式。在处理网页数据时,正则表达式可以帮助从杂乱的数据中提取出需要的信息。
61 2
|
7月前
|
JavaScript
10. 正则表达式匹配
10. 正则表达式匹配
46 0
|
7月前
|
固态存储 Python
正则表达匹配任意单个字符
正则表达匹配任意单个字符
233 4
正则匹配常见字符串
正则匹配常见字符串
49 0
|
新能源 Java Linux
你必须掌握的常用正则表达式大全
你必须掌握的常用正则表达式大全
1531 1
你必须掌握的常用正则表达式大全
|
JavaScript 数据安全/隐私保护
|
XML 数据安全/隐私保护 数据格式
常用正则表达式
常用正则表达式
|
Java 数据安全/隐私保护 Perl
常用的正则表达式大全
本文总结了常用的常用的正则表达式
134 0
常用的正则表达式大全
|
前端开发 JavaScript Java
正则表达式总结
创建正则表达式 1.使用RegExp()构造函数来创建 RegExp()构造函数非常有用,特别是在需要动态创建正则表达式的时候,这种情况往往没办法通过写死在代码中的正则表达式直接量来实现。
1032 2