python re模組findall()函數執行個體解析,pythonfindall
本文研究的是re模組findall()函數的相關內容,首先看看執行個體代碼:
>>> import re >>> s = "adfad asdfasdf asdfas asdfawef asd adsfas " >>> reObj1 = re.compile('((\w+)\s+\w+)') >>> reObj1.findall(s) [('adfad asdfasdf', 'adfad'), ('asdfas asdfawef', 'asdfas'), ('asd adsfas', 'asd')] >>> reObj2 = re.compile('(\w+)\s+\w+') >>> reObj2.findall(s) ['adfad', 'asdfas', 'asd'] >>> reObj3 = re.compile('\w+\s+\w+') >>> reObj3.findall(s) ['adfad asdfasdf', 'asdfas asdfawef', 'asd adsfas']
按以上代碼例子講解:
findall函數返回的總是Regex在字串中所有匹配結果的列表,此處主要討論列表中“結果”的展現方式,即findall中返回列表中每個元素包含的資訊。
@1.當給出的Regex中帶有多個括弧時,列表的元素為多個字串組成的tuple,tuple中字串個數與括弧對數相同,字串內容與每個括弧內的Regex相對應,並且排放順序是按括弧出現的順序。
@2.當給出的Regex中帶有一個括弧時,列表的元素為字串,此字串的內容與括弧中的Regex相對應(不是整個Regex的匹配內容)。
@3.當給出的Regex中不帶括弧時,列表的元素為字串,此字串為整個Regex匹配的內容。
總結
以上就是本文關於python re模組findall()函數執行個體解析的全部內容,希望對大家有所協助。感興趣的朋友可以繼續參閱本站其他相關專題,如有不足之處,歡迎留言指出。感謝朋友們對本站的支援!