這篇文章將為大家詳細(xì)講解有關(guān)正則表達(dá)式學(xué)習(xí)之回溯引用backreference的示例分析,小編覺得挺實用的,因此分享給大家做個參考,希望大家閱讀完這篇文章后可以有所收獲。
創(chuàng)新互聯(lián)專注于中大型企業(yè)的成都網(wǎng)站建設(shè)、成都網(wǎng)站設(shè)計和網(wǎng)站改版、網(wǎng)站營銷服務(wù),追求商業(yè)策劃與數(shù)據(jù)分析、創(chuàng)意藝術(shù)與技術(shù)開發(fā)的融合,累計客戶上千多家,服務(wù)滿意度達(dá)97%。幫助廣大客戶順利對接上互聯(lián)網(wǎng)浪潮,準(zhǔn)確優(yōu)選出符合自己需要的互聯(lián)網(wǎng)運(yùn)用,我們將一直專注高端網(wǎng)站設(shè)計和互聯(lián)網(wǎng)程序開發(fā),在前進(jìn)的路上,與客戶一起成長!一、問題引入
一個在HTML頁面中匹配標(biāo)題標(biāo)簽(H1—H6)的問題:
文本:
Welcome to my page Content is divided into twosections:
Introduction
Information about me.Hobby
Information about my hobby.This is invalid HTML
正則表達(dá)式:<[hH][1-6]>.*?[hH][1-6]>
結(jié)果:
分析:模式<[hH][1-6]>匹配任何一級標(biāo)題的開始標(biāo)簽,而且不區(qū)分大小寫,在這個例子中它匹配到了
二、回溯引用匹配
回溯引用是指模式的后半部分引用在前半部分中定義的子表達(dá)式。至于子表達(dá)式的使用、劃分和引用,在前面已經(jīng)介紹過了?,F(xiàn)在來解決前面的例子:
文本:
Welcome to my page Content is divided into twosections:
Introduction
Information about me.Hobby
Information about my hobby.This is invalid HTML
正則表達(dá)式:<[hH]([1-6])>.*?[hH]\1>
結(jié)果:
分析:首先匹配開始標(biāo)題標(biāo)簽的模式<[hH]([1-6])>,使用括號把[1-6]做為子表達(dá)式,而匹配結(jié)束標(biāo)題標(biāo)簽?zāi)J綖?/[hH]\1>,其中\(zhòng)1表示引用第一個子表達(dá)式,即([1-6]),如果([1-6])匹配到的是1,那\1也匹配到1,如果匹配到2,那\1也匹配到2,所以最后一個無效的標(biāo)題標(biāo)簽就不會被匹配到了。
關(guān)于“正則表達(dá)式學(xué)習(xí)之回溯引用backreference的示例分析”這篇文章就分享到這里了,希望以上內(nèi)容可以對大家有一定的幫助,使各位可以學(xué)到更多知識,如果覺得文章不錯,請把它分享出去讓更多的人看到。