一. 正则表达式
正则表达式是一种独立的规则
只处理字符串
字符组: 写在[]中的内容, 只要出现其中的一个都是符合内容的
普通字符表示一个正常的字符
[a-zA-Z1234567890_企稳阿萨德自行车]
元字符: d w s W D S . ^ $ [] [^] | ()
元字符表示特殊意义, 如果转义元字符, 这个元字符就失去了特殊意义
w 数字字母下划线
d 数字
s 空格
W S D 和小写的取反 [wW]匹配所有字符
表示单词的边界, 匹配一个单词的结尾
^ $匹配一个字符串的开始和结束
. 匹配出换行符之外所有字符
[]出现在方括号内的都可以匹配
[] 内的( ) . | ? + * $ ^会现原形, - 在中括号内有特殊意义, 需要转义
[^]不出现在方括号内的内容都可以匹配
a|b 符合a或b的内容都可以匹配. 把更长, 更复杂, 更苛刻的规则写在前面
() 分组, 表示给几个字符加上量词约束的需求的时候, 这些字符需要同时出现, 且按照顺序
量词: ? + * {n} {n,} {n,m}
{n} 表示这个量词之前的词出现n次
{n,}表示这个量词之前的词至少出现n次
{n,m}表示这个量词之前的词出现n-m次
? 表示这个量词之前的词出现1次或0次
+ 表示这个量词之前的词出现1次或更多次
* 表示这个量词之前的词出现0次或1次或多次
默认贪婪匹配, 量词后面加?变为惰性匹配
几个字符的组合关系
字符/元字符 只约束一个字符
字符+量词 约束一个字符连续出现的次数
字符+量词+? 约束一个字符连续出现的最少次数(惰性匹配)
字符+量词+?+x 约束一个字符连续出现量词范围内的最少次数, 遇到x就停止
二. 模块
模块是一组功能的集合
内置模块
第三方模块
自定义模块