目的:
1. 給定的字串是否符合正規表示式的過濾邏輯(稱作「匹配」)
2. 可以通過正規表示式,從字串中獲取我們想要的特定部分。
正規表示式的特點是:
1. 靈活性、邏輯性和功能性非常強;
2. 可以迅速地用極簡單的方式達到字串的複雜控制。
3. 對於剛接觸的人來說,比較晦澀難懂。
含義:代表普通字元或特殊字元
\w:匹配任何字類字元(數字、字母、下劃線)
\w: 匹配任何非字類字元(數字、字母、下劃線)
\b:代表單詞分隔
特定字元
某個具體字元(grep '1' passwd)
範圍內字元: [ ]
數字字元:[0-9],[259]
小寫字元:[a-z]
大寫字元:[a-z]
任意字元
. 表示任意字元
反向字元:^
取反:[^0-9] , [^0] (『^』一定要放倒中括號裡邊才行)
* :0次或者多次匹配前面的字元
+ :1次或者多次匹配前面的字元(+不能直接用,需要加\來轉義)
?:0次或1次匹配前面的字元(?不能直接用,需要加\來轉義)
重複特定次數: 代表重複n-m次
* :{0,1}
+ :{1,}
?: $' a.txt
2、 匹配15或者18位×××號(支援帶x的)
分析,×××開始位不能為0,結尾包括x,中間部分是13位或16數字重複。(注意轉義符號)grep '^[1-9]\([0-9]\\|[0-9]\\)[0-9xx]$' a.txt
3、 匹配密碼(由數字、字母和下劃線組成)
grep '^\w\+$' a.txt
首字元^
尾字元$
^$:表示空行。
正規表示式技巧
正規表示式 貪婪與懶惰 當正規表示式中包含能接受重複的限定符時,通常的行為是 在使整個表示式能得到匹配的前提下 匹配盡可能多的字元。考慮這個表示式 a.b,它將會匹配最長的以a開始,以b結束的字串。如果用它來搜尋aabab的話,它會匹配整個字串aabab。這被稱為貪婪匹配。有時,我們更需要懶惰匹配,...
正規表示式應用
d 非負整數 正整數 0 0 9 1 9 0 9 正整數 d 0 非正整數 負整數 0 0 9 1 9 0 9 負整數 d 整數 d 非負浮點數 正浮點數 0 0 9 0 9 1 9 0 9 0 9 1 9 0 9 0 9 0 9 1 9 0 9 正浮點數 d 非正浮點數 負浮點數 0 0 9 0 ...
正規表示式(應用)
在此頁面寫正規表示式,可以提供參考,和進行校驗 應用於前端 匹配任意長度的大小寫字母與數字 a za z0 9 匹配任意長度且不為空的大小寫字母與數字 a za z0 9 匹配長度小於20且不為空的大小寫字母與數字 a za z0 9 匹配長度小於20且不為空的大小寫字母與數字與漢字 a za z0...