# 正则表达式### 定义* 对字符串进行描述的
### 作用* 表单验证* 验证 邮箱/电话/邮编 ....* WEB编辑器* 爬虫、数据抓取、小偷程序### 定义正则表达式* 直接量* 函数* 构造函数# 正则表达式基础### 原子* 正则表达式的最小组成单位* 普通的字母、数字、符号 都是原子* 转义字符* 字符类### 字符直接量(原子)* 原子的重要组成* 普通的字母、数字、符号* \n* \t* \r* \v* \f* \\* \b 退格符* \x00* \u0000### 字符类(原子)* \d 数字 [0-9]* \D 除了数字之外的字符 [^0-9]* \w 数字、字母、下划线 [0-9a-zA-Z_]* \W 除了数字、字母、下划线 之外的字符 [^0-9a-zA-Z_]* \s 空白符 [\n\t\v\r\f ]* \S 除了空白符之外的字母 [^\n\t\v\r\f ]* . 除了换行外所有的字符 [^\n\r]* [...] * [^...]* [\b] 匹配退格符
### 重复(对原子的数量修饰)* + 表示前面原子出现1次或多次 {1,}* ? 表示前面的原子出现0次或1次 {0,1}* * 表示前面的原子出现0次1次或多次 任意次 {0,}* {m} 前面的原子出现m次* {m,n} 前面的原子出现m到n次* {m,} 前面出现的原子个数m次以上
### 指定匹配的位置 (对原子位置的修饰)* \b 单词边界* \B 不是单词边界* ^ 字符串开始边界* $ 字符串结束边界