中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

Python正則表達式初識(一)

發布時間:2020-07-08 14:53:45 來源:網絡 閱讀:2054 作者:pengdongcheng 欄目:編程語言

首先跟大家簡單嘮叨兩句為什么要學習正則表達式,為什么在網絡爬蟲的時候離不開正則表達式。正則表達式在處理字符串的時候扮演著非常重要的角色,在網絡爬蟲的時候也十分常用,大家可以把它學的簡單一些,但是不能不學。


Python正則表達式初識(一)


盡管網絡爬蟲相關庫給我們提供了豐富的庫如css、bs4、lxml等等,讓我們可以通過選擇器去匹配字符串,但是在HTML中數據往往存在標簽之中。通過選擇器確實可以匹配到標簽的內容,但是有時候標簽中存在的許多內容是冗余的,而我們只需要匹配其中部分內容即可(如匹配數字、時間等),如下圖所示。通過選擇器,我們一般可以獲取到“782好笑”這個字符串,但是我們只需要“782”這個數字的話,此時正則表達式就要派上用場了


Python正則表達式初識(一)


正則表達式可以幫我們判斷某個字符串是否符合某一個模式,其次正則表達式可以幫我們提取某個字符串中的重要部分,做子字符串的提取。今天簡單的給大家講解幾個正則表達式的特殊字符—— “^”、“.”、“*”,并且用實例進行演示,讓大家對正則表達式有個初步的了解。

小編用的Python是3版本,開發環境用的是pycharm,首先在本地新建一個demo.py文件,接下來開始進行演示。

1、正則表達式在Python中有個專門的庫叫re模塊,首先進行導入模塊。再定義一個字符串str,然后定義一個正則表達式匹配規則regex。

2、“^d”代表的意思是以d元素開頭的任意一個字符串,也就是說只要是以d開頭的字符串,后面的元素不論是什么,都是符合規則的,總之必須要以d開頭。

3、“.” 較為常用,其代表的意思是任意字符,其表示的范圍非常廣,可以接任意字符,不論是中英文,還是下劃線之類的特殊字符,都是可以代表的。舉個栗子,正則表達式“^d.”就是代表以d開頭的字符串,b后邊接任意字符都可以。

4、“*” 也十分常用,其代表的意思是前面的字符可以重復任意多遍,可以是0次,1次,2次等任意多次。

5、了解好這幾個特殊字符的用法之后,接下來通過代碼簡單的感受一下。如下圖所示,如果匹配成功,則返回yes;如果沒有匹配成功,則不返回任何東西。


Python正則表達式初識(一)


可以看到程序運行之后,返回的結果為yes,說明匹配成功。正則表達式“^d.*”代表的意思是以d開頭的字符串,后面跟著任意字符,出現任意多遍。顯然,通過匹配可以得知該正則表達式匹配的結果和原始字符串一致,之后if判斷返回值為true,所以打印出結果為yes。

6、為了進一步驗證這個模式是否正確,我們將b改為a,其代表的意思該模式下的字符串是否以a開頭的。之后再次運行程序,如下圖所示。


Python正則表達式初識(一)


此時可以看到無任何輸出,說明特殊字符“^”起到了作用。

小伙伴們,快去打開Python,感受一下正則表達式的大法吧~~~


向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

南和县| 黎平县| 巴中市| 海林市| 奉节县| 富源县| 建阳市| 滦平县| 安化县| 澄江县| 修武县| 延安市| 东辽县| 灵山县| 两当县| 丹阳市| 峡江县| 云浮市| 巧家县| 眉山市| 新营市| 东乌珠穆沁旗| 吉木萨尔县| 新郑市| 武威市| 房山区| 天长市| 芜湖县| 东港市| 武宣县| 临沂市| 泰顺县| 通州区| 临夏市| 大新县| 乌拉特后旗| 汾阳市| 高唐县| 保定市| 玉门市| 泊头市|