正则匹配

正则匹配

基本匹配式

.    匹配换行符(\n)以外的任意字符
\d   匹配数字[0-9]
\d+  匹配所有数字(10023等)
\w   匹配数字和字母和下划线
\s   匹配任意空白符比如空格,制表符,换行,回车
\n   匹配一个换行符
\t   匹配一个制表符

^    匹配字符串的开始
$    匹配字符串结尾

\W   匹配除了数字,字母,下划线,\w的反义
\D   匹配除了数字。
\S   匹配除了空白符。

a|b    或者
()     匹配括号内的表达式,也表示一个组
[]     匹配字符组里的字符 [a-z]匹配小写字母
[^xxx] 匹配除了字符组中字符的所有字符

量词

*    重复零次或者更多次
+    重复一次或更多次
?    重复零次或一次
{n}  重复n次   比如:\d{5}匹配5个数字
{n,} 重复n次或更多次
{n,m}重复n次到m次

贪婪匹配和惰性匹配

.*	贪婪匹配  比如:出现多个可以匹配对象时,匹配最远的那个结果
.*? 惰性匹配  比如:出现多个可以匹配对象时,匹配最短的那个结果。

我不是cat,cat不是我,cat?

我.*?cat:匹配为:我不是cat

我.*cat  匹配为:我不是cat,cat不是我,cat
posted @ 2024-03-26 22:19  follycat  阅读(125)  评论(0)    收藏  举报