Java編程中,經常需要從文本中提取符合特定模式的內容。正則表達式為此提供了高效的解決方案。本文以一個案例演示如何利用Java正則表達式提取特定信息。
問題: 從包含多個網址的文本中,僅提取以“.com”或“.cn”結尾的網址。
解決方案: 使用正則表達式www.S*?(com|cn)匹配以“www.”開頭,并以“.com”或“.cn”結尾的字符串。www.匹配“www.”,S*?匹配任意非空白字符(非貪婪模式),(com|cn)匹配“.com”或“.cn”。Pattern.CASE_INSENSITIVE標志確保匹配不區分大小寫。
立即學習“Java免費學習筆記(深入)”;
Java代碼示例:
String html = "<a>www.baidu.com</a><a>www.qq.com</a><a>www.aaa.cn</a>www.eee.cn"; String reg = "www.S*?(com|cn)"; Pattern pattern = Pattern.compile(reg, Pattern.CASE_INSENSITIVE); Matcher matcher = pattern.matcher(html); while (matcher.find()) { System.out.println(matcher.group()); }
輸出結果:
www.baidu.com www.qq.com www.aaa.cn www.eee.cn
此代碼演示了如何編譯正則表達式,使用Matcher類進行匹配,并循環輸出匹配結果。 通過調整正則表達式,可以靈活地提取不同模式的文本信息,實現高效的文本數據處理。
? 版權聲明
文章版權歸作者所有,未經允許請勿轉載。
THE END