Shell正则应用

正则表达式 regular expression, RE 是一种字符模式,用于在查找过程中匹配指定的字符。在大多数程序里,正则表达式都被置于两个正斜杠之间;例如/l[oO]ve/就是由正斜杠界定的正则表达式,它将匹配被查找的行中任何位置出现的相同模式。在正则表达式中,元字符是最重要的概念

正则表达式的作用
    Linux正则表达式经常在 grep,sed,awk 等中出现,要想学好这些命令首先就要掌握正则表达式
    大量的字符串文件需要进行配置,而且是非交互式的
    过滤相关的字符串,匹配字符串,打印字符串
    正则表达式应用非常广泛,存在于各种语言中,例如:php,python,java等。

基础正则表达式

正则表达式  
        转义符,将特殊字符进行转义,忽略其特殊意义 
^        匹配行首,awk中,^则是匹配字符串的开始 
$        匹配行尾,awk中,$则是匹配字符串的结尾 
^$       表示空行
 .       匹配除换行符
之外的任意单个字符
 [ ]     匹配包含在[字符]之中的任意一个字符
 [^ ]    匹配[^字符]之外的任意一个字符
 [ - ]   匹配[]中指定范围内的任意一个字符 
?        匹配之前的项1次或者0次
+        匹配之前的项1次或者多次
*        匹配之前的项0次或者多次 
()       匹配表达式,创建一个用于匹配的子串 
{ n }    匹配之前的项n次,n是可以为0的正整数 
{n,}     之前的项至少需要匹配n次 
{n,m}    指定之前的项至少匹配n次,最多匹配m次,n<=m
 |       交替匹配|两边的任意一项
ab(c|d)  匹配abc或abd 
[[:space:]]       空格
 [[:digit:]]      [0-9] 
[[:lower:]]       [a-z] 
[[:upper:]]       [A-Z] 
[[:alpha:]]       [a-Z]
原文地址:https://www.cnblogs.com/songguoyou/p/11884284.html