ホームページ >Java >&#&チュートリアル >正規表現を使用してJavaで括弧の外側のカンマを照合するにはどうすればよいですか?

正規表現を使用してJavaで括弧の外側のカンマを照合するにはどうすればよいですか?

Linda Hamilton
Linda Hamiltonオリジナル
2024-11-08 21:15:02489ブラウズ

How to Match Commas Outside Parentheses in Java Using Regex?

文字列内の括弧の外側のカンマの一致

次のような文字列を考えます。

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

目的は次のとおりです。 Java で正規表現を作成して、括弧で囲まれていないコンマのみを選択します。この例では、必要な一致は、「12」と「44」に続くカンマです。

Solution

次の 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 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。