首頁  >  文章  >  Java  >  如何使用正規表示式在 Java 中匹配括號外的逗號?

如何使用正規表示式在 Java 中匹配括號外的逗號?

Linda Hamilton
Linda Hamilton原創
2024-11-08 21:15:02435瀏覽

How to Match Commas Outside Parentheses in Java Using Regex?

符合字串中括號外的逗號

考慮類似以下內容的字串:

12,44,foo,bar,(23,45,200),6

目標是在Java 中建構一個正規表示式,以僅選擇未括在括號內的逗號。在此範例中,所需的符合項目將是「12」和「44」後面的逗號。

解決方案

以下Java 正則表達式完成任務:

Pattern regex = Pattern.compile(
    ",         # Match a comma\n" +
    "(?!       # only if it's not followed by...\n" +
    " [^(]*    #   any number of characters except opening parens\n" +
    " \)      #   followed by a closing parens\n" +
    ")         # End of lookahead", 
    Pattern.COMMENTS);

解釋

此正規表示式使用否定先行斷言,由「(?!...)」表示,以確保下一個括號(如果有)不是右括號。此約束僅允許逗號不在括號表達式內時符合。

以上是如何使用正規表示式在 Java 中匹配括號外的逗號?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn