亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 開發 > Linux Shell > 正文

shell高級學習之正則表達式

2020-07-27 18:44:52
字體:
來源:轉載
供稿:網友

正則表達式概述

正則表達式是一種定義的規則,Linux工具可以用它來過濾文本。

基礎正則表達式

純文本

[root@node1 ~]# echo "this is a cat" | sed -n '/cat/p'this is a cat[root@node1 ~]# echo "this is a cat" | gawk '/cat/{print $0}'this is a cat

 正則表達式的匹配非常挑剔,尤其需要記住,正則表達式區分大小寫。

特殊字符

正則表達式識別的特殊字符包括:

.*[]^${}/+?|()

如果要使用某個特殊字符作為文本字符,就必須轉義,一般用(/)來轉義。

[root@node1 ~]# echo "this is a $" | sed -n '//$/p'this is a $

錨字符

有兩個特殊字符可以用來將模式鎖定在數據流的行首或行尾

脫字符(^)定義從數據流中文本行的行首開始的模式。

美元符($)定義了行尾錨點。

[root@node1 ~]# echo "this is a cat" | sed -n '/^this/p'this is a cat[root@node1 ~]# echo "this is a cat" | sed -n '/cat$/p'this is a cat

在一些情況下可以組合使用這兩個命令

1.比如查找只含有特定文本的行

[root@node1 ljy]# more test.txt  this is a dogwhathowthis is a catis a dog[root@node1 ljy]# sed -n '/^is a dog$/p' test.txtis a dog[root@node

2.兩個錨點組合起來,可以直接過濾空白行

[root@node1 ljy]# more test.txt  this is a dogwhathow this is a catis a dog[root@node1 ljy]# sed '/^$/d' test.txt this is a dogwhathowthis is a catis a dog

點號字符

點號用來匹配除換行符外的任意單個字符,他必須匹配一個字符。

[root@node1 ljy]# more test.txtthis is a dogwhathowthis is a catis a dogat[root@node1 ljy]# sed -n '/.at/p' test.txtwhatthis is a cat

字符組

限定待匹配的具體字符,使用字符組。使用方括號來定義一個字符組。

[root@node1 ljy]# more test.txtthis is a dogthis is a Dogthis is a DoGthis is a cat[root@node1 ljy]# sed -n '/[dD]og/p' test.txtthis is a dogthis is a Dog[root@node1 ljy]# sed -n '/[dD]o[gG]/p' test.txt this is a dogthis is a Dogthis is a DoG

排除型字符組

要排除某些特定的元素,要在字符組前面加個脫字符。

[root@node1 ljy]# sed -n '/[dD]o[gG]/p' test.txt this is a dogthis is a Dogthis is a DoG[root@node1 ljy]# sed -n '/[^D]og/p' test.txt this is a dog

區間

正則表達式會包括此區間內的任意字符。

[root@node1 ljy]# more test.txt1231231231121222222412345341613vsdvsqwer123441231234534211444444[root@node1 ljy]# sed -n '/^[0-9][0-9][0-9][0-9][0-9]$/p' test.txt1234534211

拓展正則表達式

問號

問號表明前面的字符出現0次或者1次,僅限于此。

[root@node1 ljy]# echo "bat" | gawk '/ba?t/{print $0}' bat[root@node1 ljy]# echo "baat" | gawk '/ba?t/{print $0}'[root@node1 ljy]# echo "bt" | gawk '/ba?t/{print $0}' bt

可以將問號和字符組一起使用

[root@node1 ljy]# echo "bt" | gawk '/b[ae]?t/{print $0}'bt[root@node1 ljy]# echo "bat" | gawk '/b[ae]?t/{print $0}'bat[root@node1 ljy]# echo "bet" | gawk '/b[ae]?t/{print $0}'bet[root@node1 ljy]# echo "baat" | gawk '/b[ae]?t/{print $0}'

加號

加號表明前面的字符可以出現一次或多次,但至少是1次。

[root@node1 ljy]# echo "baat" | gawk '/b[ae]+t/{print $0}'baat[root@node1 ljy]# echo "bt" | gawk '/b[ae]+t/{print $0}' [root@node1 ljy]# echo "bt" | gawk '/ba+t/{print $0}' [root@node1 ljy]# echo "bat" | gawk '/ba+t/{print $0}'bat[root@node1 ljy]# echo "baat" | gawk '/ba+t/{print $0}'baat

花括號

ERE中的花括號允許你為可重復的正則表達式規定上下限。

m,n最少出現m此,最多出現n次。

[root@node1 ljy]# echo "baat" | gawk '/b[ae]{1,2}t/{print $0}' baat[root@node1 ljy]# echo "baaat" | gawk '/b[ae]{1,2}t/{print $0}'

管道符號

用邏輯or的方式指定正則表達式規則,其中一個條件符合要就即可。

表達式分組

正則表達式分組也可以用圓括號進行分組。

[root@node1 ljy]# echo "bat" | gawk '/b(a|e)t/{print $0}'  bat[root@node1 ljy]# echo "baat" | gawk '/b(a|e)t/{print $0}'[root@node1 ljy]# echo "bet" | gawk '/b(a|e)t/{print $0}' bet

總結

以上就是這篇文章的全部內容了,希望本文的內容對大家的學習或者工作具有一定的參考學習價值,謝謝大家對武林網的支持。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
欧美日韩国产激情| 亚洲欧美日韩精品久久亚洲区| 亚洲一区二区三区成人在线视频精品| 国产精品三级久久久久久电影| 亚洲无线码在线一区观看| 欧美乱大交做爰xxxⅹ性3| 欧美在线www| 亚洲欧美激情一区| 91久久在线播放| 欧美精品少妇videofree| 欧美午夜影院在线视频| 国产视频亚洲精品| 国产在线视频欧美| 久久五月情影视| 欧美在线亚洲一区| 精品亚洲国产成av人片传媒| 亚洲黄页视频免费观看| 激情懂色av一区av二区av| 欧美巨大黑人极品精男| 九九九热精品免费视频观看网站| 91亚洲精品久久久久久久久久久久| 日韩视频在线免费| 九九热最新视频//这里只有精品| 中文字幕视频一区二区在线有码| 国产精品亚洲视频在线观看| 国产97在线观看| 91久久精品视频| 亚洲性69xxxbbb| 精品国产拍在线观看| 久久韩国免费视频| 韩国美女主播一区| 国产成人激情小视频| 91精品国产一区| 91久久久久久久一区二区| 国产精品福利网站| 精品国产91久久久久久| 国产一区二区三区精品久久久| 91九色视频在线| 欧美色欧美亚洲高清在线视频| 国产亚洲欧美一区| 国产精品旅馆在线| 日韩av网址在线| 亚洲综合中文字幕68页| 97久久精品国产| 亚洲精品视频久久| 日本久久久a级免费| 成人在线视频网站| 国产精品久久久久久久久| 精品一区精品二区| 国产精品丝袜久久久久久高清| 日本三级久久久| 国产91av在线| 日韩精品中文字幕在线| 国产91网红主播在线观看| 久久91亚洲人成电影网站| 国自在线精品视频| 久久久噜久噜久久综合| 97欧美精品一区二区三区| 久久97精品久久久久久久不卡| 国产精品嫩草影院一区二区| 亚洲自拍偷拍色片视频| 亚洲欧美日韩国产精品| 亚洲女同精品视频| 亚洲国产精品99久久| 亚洲综合日韩在线| 裸体女人亚洲精品一区| 日本一区二区在线播放| 久久久久久国产精品三级玉女聊斋| 一区二区三区视频观看| 日韩久久精品电影| 久久久天堂国产精品女人| 91精品国产色综合久久不卡98| 久久久久久中文| 青青在线视频一区二区三区| 日本一区二三区好的精华液| 欧美激情视频网址| 亚洲高清不卡av| 97在线视频免费播放| 亚洲性线免费观看视频成熟| 日韩欧美中文在线| 亚洲成人黄色网| 亚洲欧美在线一区二区| 日韩欧美999| 亚洲精品自拍第一页| 国自在线精品视频| 欧美精品videos| 国产一区二区三区视频免费| 亚洲精品久久久久中文字幕二区| 高潮白浆女日韩av免费看| 欧美日韩国产精品一区二区三区四区| 日韩a**站在线观看| 狠狠躁夜夜躁人人躁婷婷91| 欧美在线观看网站| 久久成人精品视频| 亚洲直播在线一区| 久久精品国亚洲| 欧美在线视频网站| 久久人人爽人人爽爽久久| 91精品在线看| 色综合久久精品亚洲国产| 精品免费在线视频| 一本色道久久88综合亚洲精品ⅰ| 懂色av中文一区二区三区天美| 国产97在线播放| 91人成网站www| 中文字幕日韩在线观看| 国产成人一区二区三区电影| 日韩一级裸体免费视频| 久久久久久久久电影| 中文日韩在线视频| 成人免费网视频| 日日摸夜夜添一区| 51视频国产精品一区二区| 亚洲性线免费观看视频成熟| 在线日韩精品视频| 国模视频一区二区三区| 久久国产加勒比精品无码| 欧美影院在线播放| 亚洲欧美另类中文字幕| 欧美黑人xxxⅹ高潮交| 国产91av在线| 91精品国产高清自在线| 亚洲综合在线中文字幕| 国产日韩在线视频| 亚洲国产91色在线| 国产精品日韩在线一区| 精品久久在线播放| 日韩中文在线不卡| 国产999精品久久久影片官网| 亚洲午夜久久久久久久| 久久精品久久精品亚洲人| 国产精品久久久久福利| 亚洲成人激情在线观看| 国产在线不卡精品| 福利二区91精品bt7086| 国产精品福利无圣光在线一区| 国产一区二区三区丝袜| 在线成人免费网站| 欧美性理论片在线观看片免费| 2019国产精品自在线拍国产不卡| 亚洲精品日韩久久久| 欧美另类极品videosbest最新版本| 欧美大片免费观看在线观看网站推荐| 高跟丝袜一区二区三区| 久久夜精品香蕉| 色综合久久久久久中文网| 亚洲精品www久久久| 欧美成人精品在线视频| 亚洲国产精品一区二区久| 国产精品久久婷婷六月丁香| 中文字幕日韩精品在线观看| 国产精品成人免费电影| 国产在线一区二区三区| 亚洲欧美日韩一区二区三区在线| 中文字幕亚洲色图| 日本一欧美一欧美一亚洲视频| 国产综合在线视频| 少妇高潮 亚洲精品| 91精品在线播放| 欧美中文在线免费| 亚洲白虎美女被爆操| 国产在线不卡精品| 久久亚洲欧美日韩精品专区| 国产91精品久久久久久久|