linux正則匹配
Ⅰ linux中正則匹配*和^的區別在哪裡
一、小括弧()、中括弧[]、大括弧的區別
1>. 小括弧():匹配小括弧內的字元串,可以是一個,也可以是多個,常跟「|」(或)符號搭配使用,是多選結構的
示例1:string name = "way2014"; regex:(way|zgw) result:結果是可以匹配出way的,因為是多選結構,小括弧是匹配字元串的
示例2:string text = "123456789"; regex:(0-9)result:結果是什麼都匹配不到的,它只匹配字元串"0-9"而不是匹配數字, [0-9]這個字元組才是匹配0-9的數字
2>.中括弧[]:匹配字元組內的字元,比如咱們常用的[0-9a-zA-Z.*?!]等,在[]內的字元都是字元,不是元字元,比如「0-9」、「a-z」這中間的「-」就是連接符號,表示範圍的元字元,如果寫成[-!?*(]這樣的話,就是普通字元
示例1: string text = "1234567890"; regex:[0-9] result:結果是可以匹配出字元串text內的任意數字了,像上邊的【或符號「|」在字元組內就是一個普通字元】
示例2:string text = "a|e|s|v"; regex:[a|e|s] result:結果就是匹配字元a、e、|三個字元,這個跟(a|e|s)有區別的,區別就是(a|e|s)匹配的是a、e、s三個字元的隨意一個,三個中的任意一個,這是的|是元字元
3>.大括弧{}:匹配次數,匹配在它之前表達式匹配出來的元素出現的次數,{n}出現n次、{n,}匹配最少出現n次、{n,m}匹配最少出現n次,最多出現m次
Ⅱ linux中如何正則匹配IP地址並輸出到文件
ifconfig|grep 'Bcast' 不知道你說的是不是這個意思 在我機器上運行之後的結果是: inet addr:192.168.1.16 Bcast:255.255.255.255 Mask:255.255.255.0 我的系統ubuntu8.04
Ⅲ 如何在linux中寫正則表達式
1.linux文本查找命令 在說linux正規表達式之前,還介紹下linux中查找文本文件常用的三個命令: 1.grep : 最早的文本匹配程序,使用POSIX定義的基本正則表達式(BRE)來匹配文本。 2...
2.正則表達式簡要介紹 1.正則表達式的組成 (1).一般字元:沒有特殊意義的字元 (2).特殊字元(meta字元):元字元,有在正則表達式中有特殊意義 2.如下講下正則表達式中的常見meta字元 (1)...
Ⅳ linux 正則如何獲取匹配字元串
grep-oE"[0-9]+"
Ⅳ Linux Shell正則表達式如何匹配1~3位數字
grep '^[0-9]\{1,3\}$' test.txt | grep '^[1-9]'
如果是變數
echo $var | grep '^[0-9]\{1,3\}$' | grep '^[1-9]'
$表示行尾
這個正則不匹配 12a 這樣的字元串
你的變數內容是什麼樣的?
我用來測試的 test.txt 的內容:
123
321
123212
001
010
100
10000
0011
10101
1101
1
2
3
11
22
33
1a
2a
Ⅵ Linux:sed裡面的正則如何精確匹配呢
按照你這個情況可以使用匹配root作為過濾條件實現 df -h|sed -n '/root/p'
Ⅶ Linux裡面正則怎麼反向匹配
題主你好,
你這么問面兒太大, 正則這個東西雖說語法都大同小異, 但不同地方用起來還是有差別的, 你把實際的情況描述一下, 我再繼續為你解答.
常用的反向匹配有positive lookbehind和negative lookbehind,也就是中文所說的"零寬斷言"中的兩種情況.
=====
希望可以幫到題主, 歡迎追問.
Ⅷ linux sed 正則匹配求解
echo"BANDWIDTH:19"|sed-n-e's/BANDWIDTH:([[:digit:]]*).*/1/'-e'p'
在linux下就要使用linux下的正則語法
Ⅸ linux下正則匹配帶引號和不帶引號的區別
應該是引號裡面的,shell 不轉義。沒引號的,shell 先自己轉義一下。
所以,有的時候你可能會看到奇葩的 \\\x 的命令行,這個其實是兩次轉義。\\ 是讓 shell 轉義為 \ ,後面的 \x 是讓 shell 轉義 x 。這樣命令收到的參數,就成了 \x 。(x 可以是很多東西,我以前遇到過 " ,也就是雙引號)。
典型的 { } 就是 shell 會進行處理的東西,需要轉義或者用引號括起來防止處理。但是 [ ] 我記得 shell 好像沒有用處吧?
另外再說一下 shell 的處理, ' 裡面的不轉義(不是全部,好像是只轉義一些內容)," 裡面的依然會轉義。