本篇文章給大家分享的是有關(guān)Java中的正則表達式如何實現(xiàn)匹配特定html標簽內(nèi)的內(nèi)容,小編覺得挺實用的,因此分享給大家學習,希望大家閱讀完這篇文章后可以有所收獲,話不多說,跟著小編一起來看看吧。
成都創(chuàng)新互聯(lián)致力于做網(wǎng)站、成都網(wǎng)站建設(shè),成都網(wǎng)站設(shè)計,集團網(wǎng)站建設(shè)等服務(wù)標準化,推過標準化降低中小企業(yè)的建站的成本,并持續(xù)提升建站的定制化服務(wù)水平進行質(zhì)量交付,讓企業(yè)網(wǎng)站從市場競爭中脫穎而出。 選擇成都創(chuàng)新互聯(lián),就選擇了安全、穩(wěn)定、美觀的網(wǎng)站建設(shè)服務(wù)!如題:
使用正則表達式,怎么匹配特定html標簽內(nèi)的內(nèi)容。
比如,對于如下文本串:
... ignored content
prefix content
inner content
postfix content
... ignored content
我們要提取出標簽內(nèi)的內(nèi)容: inner content(這里的html標簽可以換成任何其它的標簽,比如
標簽)
這里引入正則表達式的group概念:詳細點擊文章查看
比如:對于一個正則表達式( ( A ) ( B ( C ) ) )
這樣,我們就能夠構(gòu)造出如下的正則表達式:.*(<(html>)(.*)\2).*
此表達式的group概念為:
顯然我們要求的就是group3的內(nèi)容。
注意:\2是對group2的引用,也就是html>
該正則表達式也可以寫成: .*(<(html>)(.*)(html>)).*
化簡其實就是.*(.*).*
代碼實現(xiàn)為:
String p = ".*(<(html>)(.*)\\2).*"; String m = "prefix午休abcpostfix"; System.out.println("Pattern: " + p); System.out.println("String to be test: " + m); Pattern pattern = Pattern.compile(p); Matcher matcher = pattern.matcher(m); if(matcher.matches()) { System.out.println("Matched String: " + matcher.group(3)); } else { System.out.println("So sad, not matching anything!"); }