正規表示式

2021-06-29 00:10:11 字數 2233 閱讀 9425

正規表示式是一種文字處理方法。基本正規表示式是最早制訂的正則表達規範;

#! /bin/bash

#表示通過ls 命令列出 /etc 目錄中的檔案,然後將執行結果傳遞給 grep 命令,

#通過 grep 命令篩選出以字元 po 開頭的檔案;

str=`ls /etc | grep "^po"`

echo

"$str"

#! /bin/bash

#列出 /etc 目錄中以 conf 結尾的檔名

str=`ls /etc | grep "conf$"`

echo

"$str"

#! /bin/bash

#列出包含字串 test 以及另外乙個字元的檔名

str=`ls /etc | grep "test."`

echo

"$str"

#! /bin/bash

#篩選以字元 l 開頭,緊跟著 1 個字元 i,任意個字元 n 的檔名

str=`ls /etc | grep "^lin*"`

echo

"$str"

#! /bin/bash

#篩選出以字元 l 開頭,緊跟著 1 個字元 i,接著 1 個字元為小寫字母的文字行

str=`ls /etc | grep "^li[a-z]"`

echo

"$str"

#! /bin/bash

#篩選出以字元 l 開頭,緊跟著 1 個字元 i,接著 1 個字元為不小寫字母的文字行

str=`ls /etc | grep "^li[^a-z]"`

echo

"$str"

擴充套件正規表示式支援基本正規表示式的元字元,但是在它的基礎上進行擴充套件,即除了支援基本正規表示式的元字元外,還會支援其他元字元;

#! /bin/bash

#篩選以字元 l 開頭,緊跟著 1 個字元 i,至少出現 1 個字元 n 的檔名

str=`ls /etc | grep "^lin+"`

echo

"$str"

#! /bin/bash

#篩選以字元 l 開頭,緊跟著 1 個字元 i,最多出現 1 個字元 n 的檔名

str=`ls /etc | grep "^lin?"`

echo

"$str"

#! /bin/bash

#篩選含有字元 lin、linux 或 study 的文字行

str=`ls /etc | grep "(lin|linux|study)"`

echo

"$str"

posix字符集是乙個形如[:…:]的特殊元序列,他可以用於匹配特定的字元範圍;

正規表示式

描述示例

[:alnum:]

匹配任意乙個字母或數字字元

[[:alnum:]]+

[:alpha:]

匹配任意乙個字母字元(包括大小寫字母)

[[:alpha:]]

[:blank:]

空格與製表符(橫向和縱向)

[[:blank:]]*

[:digit:]

匹配任意乙個數字字元

[[:digit:]]?

[:lower:]

匹配小寫字母

[[:lower:]]

[:upper:]

匹配大寫字母

([[:upper:]]+)?

[:punct:]

匹配標點符號

[[:punct:]]

[:space:]

匹配乙個包括換行符、回車等在內的所有空白符

[[:space:]]+

[:graph:]

匹配任何乙個可以看得見的且可以列印的字元

[[:graph:]]

[:xdigit:]

任何乙個十六進製制數(即:0-9,a-f,a-f)

[[:xdigit:]]+

[:cntrl:]

任何乙個控制字元(ascii字符集中的前32個字元)

[[:cntrl:]]

[:print:]

任何乙個可以列印的字元

[[:print:]]

正規表示式 正規表示式 總結

非負整數 d 正整數 0 9 1 9 0 9 非正整數 d 0 負整數 0 9 1 9 0 9 整數 d 非負浮點數 d d 正浮點數 0 9 0 9 1 9 0 9 0 9 1 9 0 9 0 9 0 9 1 9 0 9 非正浮點數 d d 0 0 負浮點數 正浮點數正則式 英文本串 a za z...

正規表示式 表示式

網域名稱 a za z0 9 a za z0 9 a za z0 9 a za z0 9 interneturl a za z s 或 http w w w 手機號碼 13 0 9 14 5 7 15 0 1 2 3 5 6 7 8 9 18 0 1 2 3 5 6 7 8 9 d 號碼 x x x...

Linux正規表示式 編寫正規表示式

為了所有實用化的用途,你可以通過使用程式產生正確的結果。然而,並不意味著程式總是如你所願的那樣正確地工作。多數情況下,如果程式不能產生想要的輸出,可以斷定真正的問題 排除輸入或語法錯誤 在於如何描述想要的東西。換句話說,應該考慮糾正問題的地方是描述想要的結果的表示式。表示式不完整或者公式表示得不正確...