正则表达式

16 篇文章 0 订阅
1 篇文章 0 订阅

学习正则需要弄明白几个点:元字符,断言,标记。以下案例给出了简单的说明。

元字符:

^ 		匹配行的开始  
$		匹配尾的结束
.		任意字符(除了换行符)
[ ]	    匹配方括号中包含的任意字符 
[^]		否定字符类,匹配方括号中不包含的任意字符
* 		匹配前面的子表达式零次或多次
+		匹配前面的子表达式一次或多次
?		匹配前面子表达式一次或零次,或指明一个非贪婪限定符
{n,m}	匹配前面字符最少n次,最多m次
(xyz)	按照确切顺序匹配xyz
|		分支结构,匹配符号之前的字符或后面的字符。
\ 		转义字符,还原元字符原来的含义,允许你匹配保留字符 [ ] ( ) { } . * + ? ^ $ \ |

举例:

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

断言

断言是一种匹配条件,但是不包括匹配的字符串。
在这里插入图片描述
例1:正向先行 匹配大写字母 T 或小写字母 t,后面跟字母 h,后跟字母 e。 在括号中,我们定义了正向先行断言,它会引导正则表达式引擎匹配 The 或 the 后面跟着 fat。
"(T|t)he(?=\sfat)" => The fat cat sat on the mat.
例2: 负向先行 从输入字符串中获取全部 The 或者 the 且不匹配 fat 前面加上一个空格字符。
"(T|t)he(?!\sfat)" => The fat cat sat on the mat.
例3: 正向后行 从输入字符串中获取在单词 The 或 the 之后的所有 fat 和 mat 单词。
"(?<=(T|t)he\s)(fat|mat)" => The fat cat sat on the mat.
例4:负向后行 在输入字符中获取所有不在 The 或 the 之后的所有单词 cat。"(?<!(T|t)he\s)(cat)" => The cat sat on cat.

标记

标记也称为修饰符,它会修改正则表达式的输出。这些标志可以以任意顺序或组合使用,并且是正则表达式的一部分。
在这里插入图片描述
在这里插入图片描述
例:小写字母 a,后跟小写字母 t,匹配除了换行符以外任意字符零次或一次。而且因为 m 标记,现在正则表达式引擎匹配字符串中每一行的末尾。
在这里插入图片描述

感谢原作者edoco等人的乐于助人,此次温习又让我对正则熟悉了几分,之前学习但是用的少,感觉有点遗忘,所以又重新看了一便,还是那么简单明了,感谢。以上,只当作是自己学习的一个记录,不做其他用途。
摘抄自https://github.com/cdoco/learn-regex-zh

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值