正規表示式文字過濾

2022-06-25 01:30:16 字數 2000 閱讀 4866

1.grep 預設是按照以行為基本單位進行匹配和顯示的。

2.grep預設匹配只要包含模式字元即可

grep -w 是按單詞匹配,和普通的匹配不一致

單詞的分隔符, 數字加字母加下劃線都算做單詞的一部分

匹配顯示結果的行號

grep 並且關係和 或者關係

1.並且        grep     root       /etc/passwd   |   grep shutdown

2.或者        grep     -e  root  -e  shutdown     /etc/passwd       

1.字元匹配

.  表示乙個任意字元  .放在裡面就表示.本身這個字元

2.匹配次數

某乙個字元出現的次數

*  表示*號前面的字元出現的次數是不確定的

3.位置錨定

行首   ^         不能匹配中間某段字串的開始

行尾   $        不能匹配中間某一段字串的結尾

單詞詞首      \單詞詞尾       root\>    root處於單詞的最右側

4.分組

1. echo wangwangwangggww | grep "\(wang\)\"

2.後向引用

正規表示式匹配的是檔案的內容或者標準輸出的字串,萬用字元匹配的是檔案的名稱.兩者操作的物件不一致.

shell執行命令的時候,正規表示式是以整個輸出作為字串內容,包括看不到的空格符號。

有些命令結果會輸出乙個或者多個空格,有些命令不會輸出空格.

1.在表示式中()符號前面和{}括號前面都必須要加上\(\) 和 \.

grep "^\(.*\):.*\1$" /etc/passwd

2.正規表示式預設從字串的最前面開始查詢,但是如果錨定的是行尾,那麼正則會從尾部開始查詢

1.從尾部開始查詢

2.從頭部開始查詢

3.分組例項

第一分組匹配到的字串是7,最後面的[0-9]*\1 表示匹配到以7結尾而且7前面可以包含任意個數字的數字

1.基本正則語法  小括號和大括號前面需要加上\符號做轉義

grep  -w   "[0-9]\"    /etc/passwd

2.擴充套件正則       小括號和大括號前面不要加上轉義字元

grep -ew      "[0-9]"     /etc/passwd

egrep -w      "[0-9]"     /etc/passwd

MySql萬用字元過濾,正規表示式過濾

百分號萬用字元 在搜尋串中,表示任意字元出現的任何次數。1 找出所有以jet開頭的產品 select prod name,prod price from products where prod name like jet 2 匹配任何位置包含文字anvil的值 select prod name,pr...

過濾敏感詞 正規表示式

最近做了乙個遊戲聊天功能,其中有個過濾敏感字型的需求,其實這個功能很簡單,完全前端去控制,傳送前把文字過濾一次,後端只 就好。一.重要性 正規表示式在程式設計中經常會用到 如web前端的合法輸入檢測 郵箱檢測等 如遊戲聊天中的遮蔽字型等 二.學習 正規表示式規則,掌握一些常用的匹配規則,以下以為c ...

正規表示式 內網IP 過濾

我們在平時的生活中,可能會有 內網 ip 過濾的需求。一般需要過濾以下幾個網段跟 ip 10.0.0.0 10.255.255.255 a類 172.16.0.0 172.31.255.255 b類 192.168.0.0 192.168.255.255 c類 小技巧 如果你在網路出口上使用nat技...