Python合集之Python正規表示式 一

2022-06-05 09:42:07 字數 1501 閱讀 5287

在處理字串時,經常會有查詢符合某些複雜規則的字串的需求。正規表示式就是用於描述這些規則的工具。

行定位符就是用來描述字串的邊界,「^」表示行的開始,「$」表示行的結尾。

^tm
該表示式表示要匹配字串tm的開始位置是行頭,如:「tm equal tomorrow moom」可以匹配,而「tomorrow moon equal tm」則不匹配。但使用:

tm$
後者可以匹配而前者不能匹配。如果要匹配的字串可以出現在字串的任意部分,那麼可以直接寫成下面的格式:

tm

\bmr\w*\b
上面的正規表示式用於匹配以字母mr開頭的單詞,先從某個單詞開始處(\b)然後匹配字母mr,接著是任意數量的字母或數字(\w*)最後單詞結束處(\b)該表示式可以匹配「mrsoft」、「\nmr」、「mr123456」等,但不能與「amr」匹配。

**說明舉例.

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

.可以匹配「mr\nm\tr」中的m、r、m、\t、r

\w匹配字母、數字、下劃線和漢字

\w可以匹配「m中7\rn」中的「m、中、7、r」,但不能匹配「\n」

\w匹配除了字母、數字、下劃線或漢字以外的字元

\w可以匹配「m中7\rn」中的「\n」,但不能匹配「m、中、7、r」

\s匹配單個的空白符(包括tab鍵和換行符)

\s可以匹配「mr\tmr」中的「\t」

\s除單個空白符(包括tab鍵和換行符)以外的所有字元

\s可以匹配「mr\tmr」中的「m 、r、 m、 r」

\b匹配單詞的開始或結束,單詞的分界符通常是空格,標點符號或者換行

在"i like mr or am"字串中,\b m與mr中的m相匹配,但與am中的m不匹配

\d匹配數字

\d可以匹配「m7ri」中的「7」

在上面的例子中,使用(\w*)匹配任意數量的字母或數字,如果想要匹配特定數量的數字,該如何表示呢?正則 表示式為我們提供了限定符(指定數量的字元)來實現此功能,如匹配8位qq號可以使用如下的表示式:

^\d$
限定符說明舉例?

匹配前面字元零次或者一次

colou?r,該表示式可以匹配colour和color

+匹配前面的字元一次或多次

go+gle,該表示式可以匹配的範圍從gogle到goo...gle

*匹配前面的字元零次或多次

go*gle,該表示式可以匹配的範圍從ggle到goo...gle

匹配前面的字元n次

gogle,該表示式只匹配google

匹配前面的字元最少n次

gogle,該表示式可以匹配的範圍從google到goo...gle

匹配前面的字元最少n次,最多m次

employe,該表示式可以匹配employ,employe、employee

花絮:

Python合集之Python字典(四)

ps 前段時間因為年底時間比較繁忙,沒有及時更新,望大家見諒,今天趁著大年初一趕緊給大家更新一波。由於字典是可變序列,所以可以隨時在字典中新增 鍵 值 對 向字典中新增元素的語法格式如下 dictionary key value 引數說明 dictionary 表示字典名稱 key 表示要新增元素的...

Python合集之Python元組(一)

在上一節的合集中,我們了解了python的二維列表的相關知識,本節我們將進一步了解一下python元組的相關知識。元組是python中另一種重要的序列結構,與列表類似,也是由一系列按特定順序排列的元素組成,但是他是不可變序列。因此,元組也可以稱為不可變的列表。在形式上,元組的所有元素都放在 中,兩個...

Python合集之Python列表(五)

在上一節的合集中,我們了解了python 列表中元素的統計及計算的相關知識,本節我們將進一步了解一下python列表中元素的排序的相關知識。在實際開發中,經常需要對列表進行排序。python中提供了兩種常用的對列表進行排序的方法 使用列表物件的sort 方法,使用內建的sorted 函式。列表物件提...