正则表达式(限定符、元字符、一些方法)总结

正则表达式

限定符(重复次数)

限定符描述实例
问号之前的字符出现0次或者1次(?前的字符可有可无)used? 可以匹配 use 和used
*星号之前的字符可以出现0次或者多次ab*c 可以匹配 abbbc abc ac ,不可以匹配adc
+加号之前的字符可以出现1次或者多次ab+c 可以匹配 abbbc abc ,不可以匹配ac
{}花括号之前的字符可以出现花括号内的次数(区间)ab{4}c 可以匹配abbbbc ,ab{4,6}c 可以匹配b出现4到6次,ab{2,}c 可以匹配b出现2次以上

想要用限定符作用于多个字符,可以用()将多个字符括起来,(ab)+ 可以匹配 ab abab ababab

或运算

a_(cat|dog) 其中,(cat|dog),可以匹配,cat或者dog

元字符

([a-zA_Z]){2,0}

正则表达式主要依赖于元字符。 元字符不代表他们本身的字面意思,他们都有特殊的含义。一些元字符写在方括号中的时候有一些特殊的意思。以下是一些元字符的介绍:

元字符描述
.点号匹配任意单个字符除了换行符。
[ ]字符种类。匹配方括号内的任意字符。
[^ ]否定的字符种类。匹配除了方括号里的任意字符
*匹配>=0个重复的在*号之前的字符。
+匹配>=1个重复的+号前的字符。
?标记?之前的字符为可选.
{n,m}匹配num个大括号之前的字符或字符集 (n <= num <= m).
(xyz)字符集,匹配与 xyz 完全相等的字符串.
|或运算符,匹配符号前或后的字符.
\转义字符,用于匹配一些保留的字符 [ ] ( ) { } . * + ? ^ $ \ |
^从开始行开始匹配.
$从末端开始匹配.

简写字符集

正则表达式提供一些常用的字符集简写。如下:

简写描述
.除换行符外的所有字符
\w匹配所有字母数字,等同于 [a-zA-Z0-9_]
\W匹配所有非字母数字,即符号,等同于: [^\w]
\d匹配数字: [0-9]
\D匹配非数字: [^\d]
\s匹配所有空格字符,等同于: [\t\n\f\r\p{Z}]
\S匹配所有非空格字符: [^\s]
\f匹配一个换页符
\n匹配一个换行符
\r匹配一个回车符
\t匹配一个制表符
\v匹配一个垂直制表符
\p匹配 CR/LF(等同于 \r\n),用来匹配 DOS 行终止符

标志

标志也叫模式修正符,因为它可以用来修改表达式的搜索结果。 这些标志可以任意的组合使用,它也是整个正则表达式的一部分。

标志描述
i忽略大小写。
g全局搜索。不仅仅返回第一个匹配的,而是返回全部
m多行修饰符:锚点元字符 ^ $ 工作范围在每行的起始。

\1 \2 的用法

正则表达式中 ‘\1’ 匹配的是 字符 ‘\1’ 。 (因为 ‘\’ 匹配字符 ‘\’ ) ‘\2’ 匹配的是 字符 ‘\2’

单独斜杠的 \1 , \2 就是反向引用了。 ‘\1’ 匹配的是 所获取的第1个()匹配的引用。例如,’(\d)\1’ 匹配两个连续数字字符。如33aa 中的33 ‘\2’ 匹配的是 所获取的第2个()匹配的引用。

正则对象的一些方法

方法描述
[exec]一个在字符串中执行查找匹配的RegExp方法,它返回一个数组(未匹配到则返回 null)。
[test]一个在字符串中测试是否匹配的RegExp方法,它返回 true 或 false。
[match]一个在字符串中执行查找匹配的String方法,它返回一个数组,在未匹配到时会返回 null。
[matchAll]一个在字符串中执行查找所有匹配的String方法,它返回一个迭代器(iterator)。
[search]一个在字符串中测试匹配的String方法,它返回匹配到的位置索引,或者在失败时返回-1。
[replace]一个在字符串中执行查找匹配的String方法,并且使用替换字符串替换掉匹配到的子字符串。
[split]一个使用正则表达式或者一个固定字符串分隔一个字符串,并将分隔后的子字符串存储到数组中的 String 方法。
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值