【Linux】正则表达式
一、什么是正则表达式?
简单的说,正则表达式就是处理字符串的方法,它是以为单位来进行字符串的处理行为,正则表达式通过一些特殊的符号的辅助,可以让用户轻易达到查找、删除、替换某种特定字符串的处理程序。
二、字符类
字符 含义 举例
. 匹配任意一个字符 abc. 可以匹配 abcd,abcq 等
[ ] 匹配括号中任意一个字符 [abc]d可以匹配 ad、bd、cd
- 在括号里表示字符范围 [0-9a-zA-Z] 可以匹配数字字母等
^ 位于 [ ] 括号的开头,匹配 [^xy] 匹配除 xy 之外的任意一字符
除括号中的字符之外的任意
一个字符。
[[:xx:]] grep 工具预定义的一类名字符类 [[:alpla:]] 匹配一个字母 [[:digit:]] 匹配一个数字
三、数量限定符
四、位置限定符
五、其他特殊字符
字符 含义
\ 转义字符,普通字符转义为特殊字符,特殊--->普通
() 将正则表达式括起来,组成一个单元,可以对整个单元使用数量限定
| 连接两个式子,表示或的关系
六、基础正则表达式和扩展正则表达式出规范
以上介绍的是 grep 正则表达式的扩展规范,基础规范也有这些语法,只是字符 ? + {} | () 应解释为普通字符,要表示上述特殊含义则需要加 \ 含义。如果使用 grep 而不是 egrep,并且不是加 -E 参数,则应该按照基础规范来写正则表达式。