练习正则表达式
限定符
? : 限定符,在问号前面的字符出现1次或0次,可有可无
- : 0个或多个次数
- : 一次以上的字符,如果多次ab{6}c:指定出现6次。范围ab{2-6}c:2到6次闭区间,{2,}可省导致左闭右开
以上限定符对象只有一个字符,如果要多个字符重复,则将(ab)打个括号,之后再添加限定符
或运算符
a (dog|cat)要么是cat要么是dog,括号必不可恕,否则a dog 或 cat
字符类
[a-z] [a-z0-9] ^0-9
Baozi I love baOzI 0615Today
元字符
预定好了常见字符类型如数字空白符
以反斜杠开头
元字符 | 含义 |
---|---|
\d | 数字字符 |
\w | 英文字符数字下划线 |
\s | 空白符tab和换行符 |
\D | 非数字字符, |
\W | 非单词字符 |
\S | 非空白字符 |
\b | 匹配单词的开始和接受 |
\B | 非单词的边界 符号与符号 单词与单词的边界 |
. | 任意字符,但不包含换行符 |
^ | ^sc 匹配行首 |
$ | er$匹配行尾 |
贪婪与懒惰匹配
This is a sample
想要匹配html标签,<.+>,但会匹配整个段落,因为.+会尽量匹配尽可能多的字符
<.+?>将贪婪匹配切换为懒惰匹配
示例
匹配16进制RGB
#[a-fA-F0-9]{6}\b
匹配ip地址
要求4位,每一位最大255
\b((25[0-5]|2[0-4]\d|[01]?\d\d?)\.){3}(25[0-5]|2[0-4]\d|[01]?\d\d?)\b
0 评论:
发表评论