python正則表達式特殊符號有哪些
python正則
python正則是處理字符串的強大工具
上一次很多朋友寫文字屏蔽說到要用正則表達,其實不是我不想用(我正則用得不是很多,看過我之前爬蟲的都知道,我直接用BeautifulSoup的網頁標簽去找內容,因為容易理解也方便),而是正則用好用精通的很難(看過正則表的應該都知道,里面符號對應的方法規則有很多,很靈活)。對于接觸編程不久的朋友們來說很可能在編程的過程上浪費很多時間,今天我把經常會用到正則簡單介紹下,如果不是很特殊基本都覆蓋使用。
正則表達式并不是Python的一部分。正則表達式是用于處理字符串的強大工具,擁有自己獨特的語法以及一個獨立的處理引擎,效率上可能不如str自帶的方法,但功能十分強大。得益于這一點,在提供了正則表達式的語言里,正則表達式的語法都是一樣的,區別只在于不同的編程語言實現支持的語法數量不同;但不用擔心,不被支持的語法通常是不常用的部分。如果已經在其他語言里使用過正則表達式,只需要簡單看一看就可以上手了。
正則表達式(Regular expressions REs或regexes或regex patterns)本質是小的且高度專業化的編程語言。它嵌入到 Python 中,調用使用re模塊。需要制定一些規則來描述那些你希望匹配的字符串集合。這些字符串集合可能包含英語句子、e-mail地址、TeX 命令,或任何你想要的東東。然后可以提出問題,例如“字符串是否匹配該模式?”或“模式是否匹配字符串?”。 新網認為您還可以使用RE修改字符串或以各種方式拆分它。
正則表達式模式被編譯成字節碼,然后由 C 語言寫的匹配引擎執行。對于高級的使用,你可能需要關注匹配引擎是如何執行給定RE,并通過一定的方式來編寫RE,以便產生運行得更快的字節碼。
新網提醒大家,正則表達式語言小而嚴格,不是所有的字符處理都可以使用正則表達式。還有一些任務,可以使用正則表達式來完成,但是表達式非常復雜。在這種情況下編寫 Python 代碼來處理會更好些;盡管 Python 代碼比精巧的正則表達式執行起來會慢一些,但可能會更容易理解。
點號(.)-匹配除換行符\n外的任意單個字符。
示例:a.o—匹配字母a和o且二者中間為任意單字符的字符串,如axo,a!o。
指數號(^)-匹配以指定字符開頭的字符串。
示例:^start—匹配以start開頭的字符串。
美元符($)-匹配以指定字符結尾的字符串。
示例:/aa/bb$—匹配以"/aa/bb"為結尾的字符串。
匹配元字符須使用轉義符(\)。
如果想要匹配的字符是正則表達式中的特殊字符,那么就需要加上轉義符(\),示例:
匹配$結尾的字符串—\$$。
一個問題:以aa開頭且以bb$結尾的正則表達式怎么寫?
正則表達式的形式就是一種匹配模式,也就是正則表達式模式,其他符號的正則表達式。
<div>
聲明:免責聲明:本文內容由互聯網用戶自發貢獻自行上傳,本網站不擁有所有權,也不承認相關法律責任。如果您發現本社區中有涉嫌抄襲的內容,請發
送郵件至:operations@xinnet.com進行舉報,并提供相關證據,一經查實,本站將立刻刪除涉嫌侵權內容。本站原創內容未經允許不得轉載,或轉載時
需注明出處:新網idc知識百科