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