// d 匹配数字,等价于【0-9】
// D 匹配非数字,等价于【^0-9】
// s 匹配任意的空白字符,等价于【 vf】
// S 匹配任意的非空白字符,等价于【^ vf】
// w 匹配任意的字母、数字及下划线,等价于【0-9 a-z A-Z _】
// W 匹配任意的非字母、数字及下划线,等价于【^0-9 a-z A-Z _】
// . 匹配换行符为的任意字符
// D 匹配非数字,等价于【^0-9】
// s 匹配任意的空白字符,等价于【 vf】
// S 匹配任意的非空白字符,等价于【^ vf】
// w 匹配任意的字母、数字及下划线,等价于【0-9 a-z A-Z _】
// W 匹配任意的非字母、数字及下划线,等价于【^0-9 a-z A-Z _】
// . 匹配换行符为的任意字符
// 变量
// ? 出现零次或一次,等价于{0,1}
// * 至少出现零次,等价于{0.}
// + 至少出现一次,等价于{1,}
// {m} 出现m次
// {m,} 至少出现m次
// {m,n} 至少出现m次,最多n次
// | 或者
// ^ 以指定字符开头
// $ 以指定字符结尾
// 【……】 表示在什么范围之内,如【0-9】
// 【^…】 表示不在范围之内,如【^3-5】
// ? 出现零次或一次,等价于{0,1}
// * 至少出现零次,等价于{0.}
// + 至少出现一次,等价于{1,}
// {m} 出现m次
// {m,} 至少出现m次
// {m,n} 至少出现m次,最多n次
// | 或者
// ^ 以指定字符开头
// $ 以指定字符结尾
// 【……】 表示在什么范围之内,如【0-9】
// 【^…】 表示不在范围之内,如【^3-5】
// 转义符
// 换行
// 回车
// 水平制表符
// v 垂直制表符
// f 换页(走纸)
// \ 反斜线
// . 点
// | 竖线
// * 星号
// ? 问好
// 换行
// 回车
// 水平制表符
// v 垂直制表符
// f 换页(走纸)
// \ 反斜线
// . 点
// | 竖线
// * 星号
// ? 问好
// 捕获组
// ()
// 修正符
// g(global) 全局
// i(ignore) 忽略大小写
// ()
// 修正符
// g(global) 全局
// i(ignore) 忽略大小写