首頁 > Java > java教程 > 如何在 Java 7 之前的 Java 中使用命名擷取群組?

如何在 Java 7 之前的 Java 中使用命名擷取群組?

Barbara Streisand
發布: 2024-11-05 06:01:01
原創
551 人瀏覽過

How can I use named capture groups in Java before Java 7?

Java 中帶有正規表示式的命名群組

正規表示式套件有限制

java.regex 套件我已確認不支援命名群組,因此請讓我知道哪些第三方程式庫支援它。

我研究了 jregex,但最後一個版本是在 2002 年,它不適用於 java5(儘管我立即嘗試了)。

自 Java 7 以來的支援

Java 7 新增了對命名群組的支援。支援命名捕獲組的構建塊是:

  • '(?capturing text)' 定義命名組'name'
  • ' 反向引用命名組'name' k '
  • '${name}' 引用Matcher 的替換字串中捕獲的群組
  • 由指定的「命名群組」「Matcher.group(String name)」捕獲的輸入回傳子字串

Java 7 之前的替代方案有一個替代方案。

Google 命名正規表示式

    jregex
  • Regex2 庫

範例

輸入字串:"TEST 123"正規表示式:"(?w ) (? ; d )"

訪問:

matcher.group(1) == "TEST"

matcher.group("login") == "TEST"

matcher. name (1) == "登入"

替換:

matcher.replaceAll("aaaaa_$1_sssss_$2____") == "aaaaa_TEST_sssss_123____"

matcher.replacep" {登入}_sssss_${id}____") == "aaaaa_TEST_sssss_123____"

以上是如何在 Java 7 之前的 Java 中使用命名擷取群組?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
作者最新文章
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板