Java 正規表示式命名群組:深入探索
儘管Java 的java.regex 套件中缺少內建命名群組支持,第三方庫為此限制提供了解決方案。
Java 7 對命名組的支援
從Java 7 開始,已引入命名捕獲組,具體如下構造:
Java 7 之前的替代方案
在Java 7 之前,多個庫提供了命名組支援:
範例
考慮以下使用命名正規表示式模式的範例:
String input = "TEST 123"; Pattern pattern = Pattern.compile("(?<login>[\w]+) (?<id>[\d]+)"); Matcher matcher = pattern.matcher(input); System.out.println("Login: " + matcher.group("login")); System.out.println("ID: " + matcher.group("id"));
這將輸出:
Login: TEST ID: 123
這將輸出:
限制
不支援正規表示式內遞迴。 命名組不能用作正規表示式模式內的遞迴目標。
結論第三方函式庫為 Java 提供了強大的命名群組支援。然而,隨著 Java 7 中命名組的引入,開發人員現在可以採用更簡化和標準化的方法來在正規表示式模式中使用命名組。以上是如何在 Java 正規表示式中使用命名組?的詳細內容。更多資訊請關注PHP中文網其他相關文章!