首頁  >  文章  >  後端開發  >  分享一段Python正規的簡單程式碼實例

分享一段Python正規的簡單程式碼實例

Y2J
Y2J原創
2017-05-04 13:17:431689瀏覽

這篇文章主要介紹了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