linux 正則表達式


正則表達式

1.正則表達式的分類(grep)
	1.普通正則表達式
	2.拓展正則表達式
	
2.普通正則表達式
^ : 以某字符開頭
$ : 以某字符結尾
. : 匹配除換行符之外的任意單個字符
* : 匹配前導字符的任意個數 
[]: 某組字符串的任意一個字符
[^]: 取反
[a-z]    : 匹配小寫字母
[A-Z]    : 匹配大寫字母
[a-zA-Z] : 匹配字母
[0-9] 	 : 匹配數字
\ : 取消轉義
(): 分組
\n : 代表第n個分組

# 拓展正則
{}    :匹配的次數
{n}		: 匹配n次
{n,}	:至少匹配n次
{n,m}	:匹配 n 到 m 次
{,m}	:最多匹配m次
+      : 匹配至少有一個前導字符
?      :  匹配一個或零個前導字符
|      : 或

正則表達式案例

案例:
	案例1:在/etc/passwd文件中,匹配以ftp開頭的行
		grep '^ftp' /etc/passwd

	案例2:在/etc/passwd文件中,匹配以bash結尾的行
		grep 'bash$' /etc/passwd

	案例3:匹配本機中有哪些ip
		ip a | grep -oE '([0-9]{1,3}\.){3}[0-9]{1,3}'

	案例4:要求將/etc/fstab中的去掉包含 # 開頭的行,且要求 # 后至少有一個空格
		grep -vE '^#\ +' /etc/fstab

	案例5:找出文件中至少有一個空格的行
		grep -E '\ +' xxx

	案例6:將 nginx.conf 文件中以#開頭的行和空行,全部刪除 
		grep -vE '^\ *#|^$' /etc/nginx/nginx.conf


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM