. 匹配任意字符,包括空字符
- (星号) 表示前一个字符出现0次到任意次
.* 表示匹配任意长度的字符串,可以是空字符串
? 表示前一个字符(或者说子表达式)出现0次到1次
如有这么几个文件a.xls a.xlsx a.xlsm a.xlsmx
a.xls.? 匹配a.xls a.xlsx a.xlsm 表示 待匹配的字符,后面多一个字符 而最后一个多了两个,不符合原则
. 转义字符为了表示.
[] 用来枚举所有可能出现的字符集合,只要是[]里面出现的就都能匹配
如[+-*/]用来匹配加减乘除中的任意一个,不能匹配%
{m, n} m和n都是数字,表示匹配字符或者表达式出现的下线和上限
{m, }比m多的任意字符
{, n}比n少的任意字符
{m} 精确到m个字符
比如: .{3,5}用来匹配3到5个任意字符串
() 用来划范围的 比如:(abc)? 匹配abc要么abc一起出现一次,要么都不出现
abc? 匹配ab或者abc
[0-9]用来匹配单个数字字符 比如匹配不为0的单个数字[1-9]
[1-46-9]匹配不为1-9且不为5的单个数字
要匹配多个数字,可以这样写: [1-9][0-9]* 表示匹配所有大于0的整数
[a-z] 用来匹配单个小写字母
[A-Z] 用来匹配单个大写字母
^写在正则表达式最前面时,表示字符串开始或行开始;写在[]里面的最前面,表示取反的意思
比如:[0-9]表示字符串以非数字字符开始
如果写在正则表达式的其他位置或者[]中的其他位置,则成为一个普通的字符
$和^意义相反:$写在正则表达式的最后面时,表示字符串或行的结束。写在其他位置(包括写在[]中),都是普通字符
比如:$["]*^$此正则表达式表示:
匹配以$开头,以^结尾 ,且不包括"的任意字符串(可以为空)
参考网址https://www.cnblogs.com/youngchance/p/5162879.html