Java正則表達式如何匹配特定html標簽內的內容
如題:
使用正則表達式,怎么匹配特定html標簽內的內容。
比如,對于如下文本串:
... ignored content
prefix content
<html>inner content</html>
postfix content
... ignored content
我們要提取出<html>標簽內的內容: inner content(這里的html標簽可以換成任何其它的標簽,比如<p>標簽)
這里引入正則表達式的group概念:詳細點擊文章查看
比如:對于一個正則表達式( ( A ) ( B ( C ) ) )
- group 1為:( ( A ) ( B ( C ) ) )
- group 2為:( A )
- group 3為:( B ( C ) )
- group 4為:( C )
這樣,我們就能夠構造出如下的正則表達式:.*(<(html>)(.*)</\2).*
此表達式的group概念為:
- group 1: (<(html>)(.*)</\2)
- group 2: (html>)
- group 3: (.*)
顯然我們要求的就是group3的內容。
注意:\2是對group2的引用,也就是html>
該正則表達式也可以寫成: .*(<(html>)(.*)</(html>)).* 化簡其實就是.*<html>(.*)</html>.*
代碼實現(xiàn)為:
String p = ".*(<(html>)(.*)</\\2).*";
String m = "prefix<html>午休abc</html>postfix";
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!");
}
總結
到此這篇關于Java正則表達式如何匹配特定html標簽內容的文章就介紹到這了,更多相關Java正則表達式匹配html標簽內容內容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!
相關文章
Mybatis-Plus開發(fā)提速器mybatis-plus-generator-ui詳解
這篇文章主要介紹了Mybatis-Plus開發(fā)提速器mybatis-plus-generator-ui,本文簡要介紹一款基于Mybatis-Plus的代碼自助生成器,文章通過實例集成的方式來詳細講解mybatis-plus-generator-ui,從相關概念到實際集成案例,以及具體的擴展開發(fā)介紹,需要的朋友可以參考下2022-11-11
SQL Server 2000 Driver for JDBC Service Pack 3 安裝測試方法
這篇文章主要介紹了數(shù)據(jù)庫連接測試程序(SQL Server 2000 Driver for JDBC Service Pack 3 安裝測試),需要的朋友可以參考下2014-10-10
解決myBatis generator逆向生成沒有根據(jù)主鍵的select,update和delete問題
這篇文章主要介紹了解決myBatis generator逆向生成沒有根據(jù)主鍵的select,update和delete問題,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2020-09-09
java jdbc連接mysql數(shù)據(jù)庫實現(xiàn)增刪改查操作
這篇文章主要為大家詳細介紹了java jdbc連接mysql數(shù)據(jù)庫實現(xiàn)增刪改查操作,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下2016-07-07

