一、概述
正则表达式(Regular Expression)是一种用于字符串模式匹配的工具,广泛应用于文本搜索、数据验证和字符串替换等场景。在Linux中,正则表达式分为两大类:基础正则表达式(BRE)和扩展正则表达式(ERE)
二、基础正则表达式
元字符:
.:匹配除换行符之外的任意单个字符[]:匹配方括号内的任意一个字符,如[a-z]匹配任意一个小写字母[^]:匹配不在方括号内的任意一个字符*:匹配前一个字符零次或多次^:匹配行的开头$:匹配行的结尾\:转义字符,用于匹配特殊字符():分组,用于提取匹配的字符串
三、扩展正则表达式
新增内容:
{n}:匹配前一个字符n次{n,}:至少匹配n次{n,m}:匹配n到m次?:匹配零次或一次+:匹配一次或多次
四、正则表达式命令
Linux中,以下命令支持正则表达式:
grep:文本搜索工具,支持正则表达式匹配sed:流编辑器,用于文本替换和修改awk:文本分析工具,支持正则表达式处理数据
五、例子
grep结合正则表达式:
bash
grep '^[a-zA-Z]' test.txt # 查找以字母开头的行