最近学Linux经常需要打好几个文件名,所以经常用到正则通配。之前也知道一点,现在整理一下用的到的。
.*
.* 的意思是匹配所有字符,其中 * 可以匹配所有字符而且多次,或者没有字符,比如 sdb*
可以匹配到 sdb
和 sdb1
。而 . 可以匹配除空格以外的字符,而且只有1次。如果需要匹配多次除了空格和空字符以外的话,要使用 + 但要注意加号的话要至少匹配一次。
[]
举个例子,[a,b,c]
匹配a或b或c,[1,2,3]
匹配1或2或3。里面是并列的或者关系
而 [a-z]
匹配从a~z所有26个小写字母,[A-Za-z]
匹配所有英文字母大小写,[1-9]
匹配数字,但是都只匹配一次。
{n}
这个是用来匹配次数的,比如 a{2}
无法匹配 abc
但是可以匹配 aabc
中的 aa ,前面的表达式也可以用这个方法重复匹配。
{ }
大括号两边分别代表从文本的开始处和结尾处开始匹配。
随学随更~