>>> import re
>>> s = "adfad asdfasdf asdfas asdfawef asd adsfas "
>>> reobj1 = re.compile('((\w+)\s+\w+)')
>>> print reobj1.findall(s)
[('adfad asdfasdf', 'adfad'), ('asdfas asdfawef', 'asdfas'), ('asd adsfas', 'asd')]
>>> reobj2 = re.compile('(\w+)\s+\w+')
>>>print reobj2.findall(s)
['adfad', 'asdfas', 'asd']
>>> reobj3 = re.compile('\w+\s+\w+')
>>>print reobj3.findall(s)
['adfad asdfasdf', 'asdfas asdfawef', 'asd adsfas']
按以上**例子講解:
findall函式返回的總是正規表示式在字串中所有匹配結果的列表,此處主要討論列表中「結果」的展現方式,即findall中返回列表中每個元素包含的資訊。
@1.當給出的正規表示式中帶有多個括號時,列表的元素為多個字串組成的tuple,tuple中字串個數與括號對數相同,字串內容與每個括號內的正規表示式相對應,並且排放順序是按括號出現的順序。
@2.當給出的正規表示式中帶有乙個括號時,列表的元素為字串,此字串的內容與括號中的正規表示式相對應(不是整個正規表示式的匹配內容)。
@3.當給出的正規表示式中不帶括號時,列表的元素為字串,此字串為整個正規表示式匹配的內容。
python正規表示式元字元 正規表示式
字元 描述將下乙個字元標記為乙個特殊字元 或乙個原義字元 或乙個 向後引用 或乙個八進位制轉義符。例如,n 匹配字元 n n 匹配乙個換行符。序列 匹配 而 則匹配 匹配輸入字串的開始位置。如果設定了 regexp 物件的 multiline 屬性,也匹配 n 或 r 之後的位置。匹配輸入字串的結束...
Python 正規表示式
1.在python中,所有和正規表示式相關的功能都包含在re模組中。2.字元 表示 字串的末尾 如 road 則表示 只有當 road 出現在乙個字串的尾部時才會匹配。3.字元 表示 字元中的開始 如 road 則表示 只有當 road 出現在乙個字串的頭部時才會匹配。4.利用re.sub函式對字串...
Python正規表示式
學習python自然而然就不得不面對正規表示式這個難題。當初在沒有學習python之前,自己也曾經嘗試著學習過正規表示式,但是那時候感覺很麻煩,很難懂,結果就是不了了之。但是現在學習python我用的書是 python基礎教程 第二版 這本書中對re模組的講解很簡單易懂,內容不多但起碼把人領進門了,...