文章目录
一、规则
符号 | 基本含义 | 举例说明 |
---|---|---|
. | 匹配除\n之外的任意字符。 | |
? | 表示?前面的字符需要出现0次或一次。 | 简单来说就是?前面的字符可有可无。比如你输入一个正则表达式tea?,那么计算机就会找到te,tel这样的字符串。 |
+ | 表示+前面的字符需要出现1次以上。 | 比如你输入一个正则表达式ab+c,那么计算机就会找到abc,abbbbc这样的字符串。 |
* | 表示*前面的字符需要出现0个或多次。 | 比如你输入一个正则表达式ab*c,那么计算机就会找到ac,abc,abbbbbc这样的字符串。 |
{} | 精确匹配:想匹配几次就匹配几次。 | 比如你输入一个正则表达式ab{6}c,那么计算机就会找到abbbbbbc这样的字符串。 |
【PS:】
精确匹配说明:你输入一个正则表达式ab{2,6}c,那么计算机就会找到abbc,abbbc,abbbbc,abbbbbc,abbbbbbc这样的字符串。ab{2,}c的话就是b出现两次以上。
\d | 匹配一个数字字符。 | 等价于[0-9]。grep 要加上-P,perl正则支持 |
\D | 匹配非数字 | 等价于[^0-9] |
\w | 匹配单词字符(不仅仅是字母,还有下划线、数字和汉字) | 匹配单字字符: [A-Za-z0-9_] |
\W | 匹配非单词字符(不仅仅是字母,还有下划线、数字和汉字) | 匹配非单字字符: [^A-Za-z0-9_] |
正则表达式验证工具网站:https://tool.oschina.net/regex/
论坛中他人总结很详细的规则:(https://blog.csdn.net/xiaowang352798/article/details/80871331)