首頁 >後端開發 >Python教學 >詳解Python正規簡單實例程式碼

詳解Python正規簡單實例程式碼

高洛峰
高洛峰原創
2017-03-22 09:25:421403瀏覽

這篇文章主要介紹了Python正規簡單實例,具體分析了Python針對字串的簡單正則匹配測試中遇到的問題與相關注意事項,需要的朋友可以參考下

本文實例講述了Python正規簡單用法。分享給大家參考,具體如下:

悄悄打入公司內部UED的一個Python愛好者小眾群,前兩天一位牛人發了條訊息:

#小的測試題:

re.split('(\W+)', ' test, test, test.')

返回什麼結果

一開始看,我倒沒注意W是大寫的,以為是小寫的w代表單字字元(含底線),今天運行一看才發現是大寫的。

在IDLE跑一下的結果如下:

>>> import re
>>> re.split('(\W+)', ' test, test, test.')
['', ' ', 'test', ', ', 'test', ', ', 'test', '.', '']
>>>

看到如上的輸出,我是帶有疑惑的,\W匹配非單字字符,那麼結果裡為什麼有那麼多非單字字元?

我都懷疑我對\W的含義是不是記錯了,打開正則手冊一看,確定我沒記錯之後,我發現了此例中匹配模式包含了括號,對應著正則裡面的(pattern),

而這表示在匹配的同時會取得匹配,並儲存到匹配結果集中。

恍然。

再測試:

>>> re.split('(\W+)', ' test, test, test.')
['', ' ', 'test', ', ', 'test', ', ', 'test', '.', '']
>>> re.split('\W+', ' test, test, test.')
['', 'test', 'test', 'test', '']
>>>

以上是詳解Python正規簡單實例程式碼的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn