這塊內容並沒有詳細的正規表示式內容,作者知識儲備不足是其一,專案中用不上是其二。基本示例
import re #引入re正規表示式庫
matching_rule = re.compile("asd") #定義正規表示式規則
search_result = matching_rule.findall("asd, asdasd, and asdasdasd in a string waiting for searching") #利用規則搜尋字串
print(search_result) #輸出結果
輸出結果:['asd', 'asd', 'asd', 'asd', 'asd', 'asd']
匹配規則
函式:規則變數名 = re.compile("規則內容")
正規表示式規則參考:十四個
常用正規表示式
規則內容舉例
a = re.compile("a") //匹配所有a字元
b = re.compile("a+") //匹配所有a, aa, aaa, aaaa...字串
c = re.compile("asd*") //匹配所有as, asd, asdd, asddd...字串
d = re.compile("(asd)+") //匹配所有asd, asdasd, asdasdasd...字串
e = re.compile('"') //匹配雙引號"
f = re.compile('"(.*)"') //匹配所有雙引號中的字串,如字串"asd",則匹配asd
以規則 f 為基礎搜尋,假設要搜尋超連結的連線,通過html的語法可以知道,超連結是使用
首頁的格式寫的,其中,超連結的內容位於 href = "這裡"
那麼,匹配規則為
rule = re.compile('href = "(.*)"')
這裡要注意,規則外是用單引號 ' ,這是因為要匹配的文字中含有雙引號 "
通過這個規則,匹配結果是
此外,為了防止轉義字元的影響,一般使用 r"" ,而不是 ""
print(r"\\aa") 輸出結果為\\aa
print("\\aa") 輸出結果為\aa
搜尋函式
函式:規則變數名.findall(待匹配字串)
findall匹配所有符合規則的字元
findall最終會返回乙個列表,例如
web_data = "首頁"
rule = re.compile('href = "(.*)"')
result = rule.findall(web_data)
print(result)
會返回乙個只有乙個元素的列表
['']
python筆記一(正規表示式)
1 usr bin env python2 coding utf 8 34 1 如果直接給出字元,則表示精確匹配5 2 d 表示數字,w 表示字母或數字,可以匹配任意字元,s 表示空白符,包括tab6 3 表示任意長度,表示至少乙個字元,表示0或1個字元,表示n個字元,表示n到m個字元7 如 d s...
一 正規表示式基礎
正規表示式是一種用來匹配字串的強有力的 設計思想是用一種描述性的語言來給字串定義乙個規則,凡是符合規則的字串,就認為它 匹配 否則就不匹配。行定位符用來描述字串的邊界。表示行的開始,表示行的結束。例如 若要匹配以am開頭的字串,則是 am 若要匹配以am結尾的字串,則是am 其中 放在方括號裡,表示...
mysql學習(一)正規表示式
mysql可以通過 like 來進行模糊匹配 mysql 同樣也支援其他正規表示式的匹配,mysql中使用 regexp 操作符來進行正規表示式匹配 模式描述 匹配輸入字串的開始位置。如果設定了 regexp 物件的 multiline 屬性,也匹配 n 或 r 之後的位置。匹配輸入字串的結束位置。...