linux学习第二周;正则表达式

Posted byy18

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了linux学习第二周;正则表达式相关的知识,希望对你有一定的参考价值。

字符匹配:
.  # 匹配任意单个字符 
[]  # 匹配指定范围内的任意单个字符
[^] # 匹配指定范围外的任意单个字符
. /*/.* # 不需要在字符串上加引号; 例如:go.*gle
 
匹配次数:
* # 匹配前面的字符任意次,包括0次  
.* # 任意长度的任意字符
以下用法都需要在字符串上加双引号; 例如:"go\{5\}gle"
\? # 匹配其前面的字符0或1次
\+ # 匹配其前面的字符至少1次 
\{n\} # 匹配前面的字符n次 
\{m,n\} # 匹配前面的字符至少m次,至多n次 
\{,n\} # 匹配前面的字符至多n次 
\{n,\} # 匹配前面的字符至少n次
 
位置锚定:
^ # 行首锚定,用于模式的最左侧 
$ # 行尾锚定,用于模式的最右侧 
例子:^$  行首加行为表示空行 (只有回车) 
     ^[[:space:]]*$  空白行 (有空格有回车)
^PATTERN$  # 用于模式匹配整行
 
\< 或 \b  # 词首锚定,用于单词模式的左侧 
\> 或 \b # 词尾锚定;用于单词模式的右侧 
\<PATTERN\> # 匹配整个单词
 
 
分组:
\(root\) # root可以是其他表示字符串的整体
 
 
 
 
扩展正则表达式:与正则表达式相比不用加斜线
例如:取所有ip相关的地址
正则表达式:ifconfig | grep -o "[0-9]\{1,3\}\.[0-9]\{1,3\}\.[0-9]\{1,3\}\.[0-9]\{1,3\}"
扩展正则表达式:ifconfig | grep -o "[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}" # \.表示转义.  斜线不能去掉,其余斜线均可去除
正则表达式:ifconfig|grep -o "\([0-9]\{1,3\}\.\)\{3\}[0-9]\{1,3\}"(利用正则表达式分组功能)
扩展正则表达式:ifconfig|grep -o "([0-9]{1,3}\.){3}[0-9]{1,3}"(利用正则表达式分组功能)
 

以上是关于linux学习第二周;正则表达式的主要内容,如果未能解决你的问题,请参考以下文章

第二周学习总结

菜鸟第二周

Linux学习笔记之正则表达式

正则表达式学习

第二周:词频统计改进

Linux学习8之Shell编程--基础正则表达式