初學正規表示式

2021-10-03 17:05:30 字數 1418 閱讀 1723

初識正則:剛聽到正規表示式,很懵,正規表示式,數學公式?那和python有什麼關係。。。。。。總之,一聽名字就知道不簡單。

1.正規表示式:又稱規則表示式,所謂正規表示式,就是對字串操作的一種邏輯公式,就是用事先定義好的一些特定字元、及這些特定字元的組合,組合乙個「規則字串」,這個「規則字串」用來表達對字串的一種過濾邏輯。

(上面是官方說法,我來說說我自己的看法,他就是自己設定一種對字串處理的方式,然後將自己輸入的字串在自己設定這種處理方式下進行處理並輸出的過程。)

2.元字元:元字元是正規表示式中具有特殊意義的字元,每個元字元都有特殊含義,它們使正規表示式能夠匹配特定的字串。常見的元字元包括 |、 ()、 、.、*、+、?、^、$等。而如果在正規表示式中見到這些字元,要知道字元不是要搜尋這些字元本身,而是要搜尋它們描述的東西。(re模組中還包括很多有用的函式,用於建立和搜尋特定的模式,如re.compile、re.search、re.sub、re.ignorecase和re.i)

例項:

#!usr/bin/env python3

import re

string =

"the quick brown fox jumps over the lazy dog."

string_list = string.split(

)pattern = re.compile(r"the", re.i)

count = 0

for word in string_list:

if pattern.search(word):

count += 1

print(

"output : ".format(count))

解釋:the quick brown fox jumps over the lazy dog.這個就是引入的字串。

而pattern = re.compile(r"the", re.i)這一行就是我設定好的特定字串。

re.i函式確保模式是不區分大小寫的,意思就是他可以識別「the」和「the」兩種。

而原始字元「r」可以確保python不處理字串中的轉義字元,像「, \t或\n」。這樣才可以確保字串中的轉義字元和正規表示式中的元字元不會有意外的衝突。

re.search函式將列表中的每個單詞與正規表示式進行比較,如果一樣則為true,否則就返回none。

拓展:re.search與re.match的區別:

1. re.search()方法掃瞄整個字串,並返回第乙個成功的匹配。如果匹配失敗,則返回none。

2.與re.match()方法不同,re.match()方法要求必須從字串的開頭進行匹配,如果字串的開頭不匹配,整個匹配就失敗了;

這就是我初學正則,會在接下來的一周時間繼續加深學習的!!!

正規表示式初學

今天第一次真正好好學了下這個正規表示式,還是看的鳥哥私房菜,感覺收穫很大啊,閒話不多說了。下面是re字元的使用 word 待搜尋的字元word在字串首行 範例 搜尋首行為 開始的那一行,並列出行號 grep n a.txt word 待 搜尋的字元word在字串行尾 範例 將行尾為!的那一行列印出來...

正規表示式初學筆記

grep 查詢 將關鍵字顏色為紅色 alias grep grep color auto 表示以什麼什麼開頭 表示以什麼為結尾 a z 表示a z的任意字元 a z 表示非以a z開頭的任意字元 表示任意乙個字元 表示0個或者任意個它前面的字元 表示0個或1個與.有些相似 表示一次或多個與 有些相似...

JS 初學正規表示式

正規表示式 匹配中文,英文本母和數字及 的寫法!同時控制長度 匹配中文 u4e00 u9fa5 英文本母 a za z 數字 0 9 匹配中文,英文本母和數字及 u4e00 u9fa5 a za z0 9 同時判斷輸入長度 u4e00 u9fa5 a za z0 9 w u4e00 u9fa5 uf...