正規表示式(第一課)

2021-06-20 11:59:35 字數 1694 閱讀 2087

\b代表單詞的開頭或結尾,也就是單詞的分界處。

例:匹配字元he    \bhe\b

.  匹配除了換行符以外的任意字元。

\d  匹配數字

0-9

例:**號碼010-83461893   0\d\d-\d\d\d\d\d\d\d\d

或者 0\d-\d

\s匹配任意的空白符(空格,製表符,換行符,中文全形空格)

\w 匹配字母或數字或下劃線或漢字。

d+ 匹配乙個或更多的連續的數字

^ 匹配字串的開始

$ 匹配字串的結束

* 代表數量,重複一次或多次

+ 重複一次或多次

? 重複一次或0次

重複n次

重複n次或多次 重複

n到m次

[a-z]匹配字元

[.?!]匹配標點符號

.?!

[a-z0-9a-z]匹配小寫字母,數字,大寫字母

例:\(?0\d[) -]?\d

(010)88886666    022-22223333  010)11112222   (010-222223333

分支條件

|  表示或得意思,滿足任意乙個條件即可通過

\(0\d\)[- ]\d | 0\d[- ]\d

分組192.168.100.001

匹配ip

的正規表示式

: \d\.\d\.\d\.\d

同樣的表示式重複了3

次。如何可以簡潔點呢?使用

()表示子表示式。

(\d\.)\d

反義\w 匹配任意不是字母,數字,下劃線,漢字的字元

\s 匹配任意不是空白符的字元

\s+ 匹配不包含空白字元的字串

\d 匹配任意飛數字的字元

\b 匹配不是單詞開頭或結束的位置

[^x] 匹配除

x外的任意字元

[^abc]匹配除

abc外的任意字元

]+> 匹配

<>以a

開頭的字串

後向引用

使用小括號指定乙個子表示式後,匹配這個子表示式的文字(

也就是此分組捕獲的內容

)可以在表示式或其它程式中作進一步的處理。預設情況下,每個分組會自動擁有乙個組號,規則是:從左向右,以分組的左括號為標誌,第乙個出現的分組的組號為

1,第二個為

2,以此類推。

後向引用用於重複搜尋前面某個分組匹配的文字。例如\1

代表分組

1匹配的內容。

\b(\w+)\b\s+\1\b可以用來匹配重複的單詞,像

go go go 。這個表示式首先是乙個單詞,也就是單詞開始處和結束處之間的多於乙個的字母或數字(\b(\w+)\b)

,這個單詞會**獲到編號為

1的分組中,然後是

1個或幾個空白符

(\s+)

,最後是分組

1中捕獲的內容(go)(\1)。

指定組名

(?\w+)意思是將

\w+的組名指定為

word。

要反向引用這個分組捕獲的內容,可以使用\k 捕獲

(exp) 匹配

exp,並捕獲內容到自動命名的組裡

(?exp)匹配

exp,並捕獲內容到

name組裡

(?;exp)匹配

exp不捕獲內容

第一課 正則簡介

正規表示式使用單個字串來描述 匹配一系列匹配某個句法規則的字串。除非您以前使用過正規表示式,否則您可能不熟悉一些術語。但是,毫無疑問,您已經使用過不涉及指令碼的某些正規表示式概念。例如,您很可能使用 和 萬用字元來查詢硬碟上的檔案。萬用字元匹配檔名中的 0 個或 1 個字元,而 萬用字元匹配零個或多...

開學第一課

因為是開學第一課,而且這是我的第一篇個人部落格,更何況還是技術部落格,所以我會認真對待,不過畢竟第一次,所以難免各方面會有不足,所以有任何的意見或建議都可以提出來以供本人提高。下面廢話少說,進入正題。使用quartus,新建乙個專案,建立乙個bdf檔案,雙擊bdf空白處,新增元件符號。找到 7413...

鋼琴第一課

哇 昨天去上了第一節鋼琴課,好開心好開心 核心要義 感覺自己像個小公主 儀態儀容 屁股只能坐一半 身體保持正直 手非常溫柔非常輕鬆地搭到琴鍵上 胳膊肘整個過程保持不動 兩手手腕微微向內旋轉,盡量讓手背與琴鍵平行,中空狀。落下時,呈自由落體狀,每個手指放到該放的琴鍵上。一首曲目彈奏完畢,手,輕輕地溫柔...