linux文字處理之常用正規表示式整理

2021-09-20 19:21:32 字數 1851 閱讀 4200

^ 行首。

$行尾。

. 除換行符之外任意乙個字元。

* 前面的字元重複0到多次。

.*用於匹配所有字元。

定義一組字元,匹配組內任一乙個字元(注意!只是組內的乙個!)

[^] 對字元組內的字元做取反操作(不包涵組內任一乙個字元)

^ 組內字串開頭的行。

^[^] 非組內字串開頭的行。

[a-z]  匹配乙個小寫字母。

[a-z] 匹配乙個大寫字母。

[a-z] 匹配乙個小寫和大寫字母。

[0-9] 匹配乙個0-9的數字。

\< 匹配單詞頭

\> 匹配單詞尾

(單詞在正則中的定義,就是以空格或者其他特殊字元做分割,連續的字串會被當做單詞。)

拓展正則:

? 前字元匹配0個或1個

+前字元匹配1個或多個

|邏輯或,例如abc|def abc或def

()小括號,用於分組,例:a(bc|de)f

意思就是abcf或adef。

s  s重複了n次。

s  s至少重複了n次,甚至更多次。

s  s至少重複了n次,最多重複m次。

posix定義的字元分類:

[:alnum:] alphanumeric characters.

匹配範圍為 [a-za-z0-9]

[:alpha:] alphabetic characters.

匹配範圍為 [a-za-z]

[:blank:] space or tab characters.

匹配範圍為 空格和tab鍵

[:cntrl:] control characters.

匹配控制鍵 例如 ^m 要按 ctrl+v 再按回車 才能輸出

[:digit:] numeric characters.

匹配所有數字 [0-9]

[:graph:] characters that are both printable and visible. (a space is print-

able, but not visible, while an a is both.)

匹配所有可見字元 但不包含空格和tab 就是你在文字文件中按鍵盤上能用眼睛觀察到的所有符號

[:lower:] lower-case alphabetic characters.

小寫 [a-z]

[:print:] printable characters (characters that are not control characters.)

匹配所有可見字元 包括空格和tab

能列印到紙上的所有符號

[:punct:] punctuation characters (characters that are not letter, digits, con-

trol characters, or space characters).

特殊輸入符號 +-=)(*&^%$#@!~`|\"'{}:;?/>.<,

注意它不包含空格和tab

這個集合不等於^[a-za-z0-9]

[:space:] space characters (such as space, tab, and formfeed, to name a few).

[:upper:] upper-case alphabetic characters.

大寫 [a-z]

[:xdigit:] characters that are hexadecimal digits.

16進製制數 [0-f]

使用方法:

[root@seker ~]# grep --color '[[:alnum:]]' /etc/passwd

Linux之文字處理

在linux系統中,即使在控制台命令列狀態下,也需要進行大量的文字處理工作。linux系統中幾乎所有的配置檔案都是以純文字形式存在的,我們也要對這些檔案進行編輯工作。linux上常見的文字編輯器有vi vim ed gedit emacs等。本章介紹的文字編輯器就是平常使用最多的vim文字處理器。v...

linux 文字處理

1.文字處理 echo echo e 033 40 35m.背景顏色範圍 40 49 40 黑 41 深紅 42 綠 43 黃色 44 藍色 45 紫色 46 深綠 47 百色 字型顏色範圍 30 39 30 黑 31 紅 32 綠 33 黃 34 藍色 35 紫色 36 深綠 37 百色 eg e...

Linux 文字處理

author janloong do o cat 連線檔案並且列印到標準輸出 sort 給文字行排序 uniq 報告或者省略重複行 cut 從每行中刪除文字區域 paste 合併檔案文字行 join 基於某個共享欄位來聯合兩個檔案的文字行 comm 逐行比較兩個有序的檔案 diff 逐行比較檔案 p...