參考部落格: py西遊攻關之模組
就其本質而言,正規表示式(或 re)是一種小型的、高度專業化的程式語言,(在python中)它內嵌在python中,並通過 re 模組實現。正規表示式模式被編譯成一系列的位元組碼,然後由用 c 編寫的匹配引擎執行。
importre## . 萬用字元,乙個 . 模糊匹配乙個除換行符之外的任意字元
#ret = re.findall('a..in', 'helloalvin')
#print(ret) # ['alvin']##
# ^ 必須以某個字元開始
#ret = re.findall('^a...n', 'alvinhelloawwwn')
#print(ret) # ['alvin']##
# $ 必須以某個字元結尾
#ret = re.findall('a...n$', 'alvinhelloawwwn')
#print(ret) # ['awwwn']##
# * 貪婪匹配 [0, +oo]
#ret = re.findall('abc*', 'abcccc') # 貪婪匹配[0,+oo]
#print(ret) # ['abcccc']##
ret = re.findall('a.*n', 'alvinhelloawwwn')
#print(ret) # ['alvinhelloawwwn'] 貪婪匹配##
# + 貪婪匹配 [1, +oo]
#ret = re.findall('abc+', 'abccc') # [1,+oo]
#print(ret) # ['abccc']##
ret = re.findall('a.+n', 'alvinhelloawwwn')
#print(ret) # ['alvinhelloawwwn'] 貪婪匹配##
# ? 匹配[0,1]
#ret = re.findall('abc?', 'abcccffab') # [0,1]
#print(ret) # ['abc', 'ab']##
{} 自定義重複次數 表示一到正無窮
ret = re.findall('
abc', '
abcccccsccccc')
print(ret) #
['abcccc'] 貪婪匹配
#--------------------------------------------字符集
#ret = re.findall('a[bc]d', 'acd')
#print(ret) # ['acd'] 匹配 b 或 c##
ret = re.findall('[a-z]', 'acd')
#print(ret) # ['a', 'c', 'd']##
ret = re.findall('[.*+]', 'a.cd+')
#print(ret) # ['.', '+'] # 在中,* + 失去原有的作用##
在字符集裡有功能的符號: - ^ \##
ret = re.findall('[1-9]', '45dha3')
#print(ret) # ['4', '5', '3']##
^ 放在表示取反,不取 a 或 b 或 ,
#ret = re.findall('[^ab,]', '45bdha3,')
#print(ret) # ['4', '5', 'd', 'h', '3']##
ret = re.findall('[\d]', '45bdha3')
#print(ret) # ['4', '5', '3']
#\ 的功能
#1、反斜槓後面跟元字元去除其特殊功能
#2、反斜槓後面跟普通字元實現其特殊功能
'''\d 相當於 [0-9]
\d 相當於 [^0-9]
\s 匹配任何空白字元
\s 匹配任何非空字元
\w 匹配任何字母數字字元 [0-9a-za-z]
\w 匹配任何非字母數字字元 [^0-9a-za-z]
\b 匹配乙個特殊字元邊界,也就是指單詞和空格間的位置
'''#
ret=re.findall('i\b','i ')
#print(ret)#
ret = re.findall('
\dert
','13ert')
print(ret) #
['3ert']
ret = re.findall('
\dert
','13^ert')
print(ret) #
['^ert']
ret = re.findall('
\s123
', '
123'
(ret)
print(re.findall(r'
i\b', '
hello,i am a hhi$hh'))
print(re.findall(r'
\bi', '
hello, i am a hhi$hh'))
print(re.findall(r'
\\', r'
abf\vaf
'))
python3 常用模組 RE模組
一.常用正規表示式符號和語法 匹配所有字串,除 n以外 表示範圍 0 9 匹配前面的子表示式零次或多次。要匹配 字元,請使用 匹配前面的子表示式一次或多次。要匹配 字元,請使用 匹配字串開頭 匹配字串結尾 re 轉義字元,使後乙個字元改變原來的意思,如果字串中有字元 需要匹配,可以 或者字符集 re...
python3 常用模組 RE模組
一.常用正規表示式符號和語法 匹配所有字串,除 n以外 表示範圍 0 9 匹配前面的子表示式零次或多次。要匹配 字元,請使用 匹配前面的子表示式一次或多次。要匹配 字元,請使用 匹配字串開頭 匹配字串結尾 re 轉義字元,使後乙個字元改變原來的意思,如果字串中有字元 需要匹配,可以 或者字符集 re...
Python3學習筆記18 re模組
python提供re模組,包含所有正規表示式的功能。由於python的字串本身也用 轉義,所以要特別注意 s abc 001 python的字串 對應的正規表示式字串變成 abc 001 因此我們強烈建議使用python的r字首,就不用考慮轉義的問題 s r abc 001 python的字串 對應...