12

重複の可能性:
Java: コンマ区切りの文字列を分割するが、引用符で囲んだコンマは無視する

いくつかのコードを表示する方が簡単です

私は次のものを持っています:

scala> val a = """op1,"op2.1,op2.2",,op4""".split(",")
a: Array[java.lang.String] = Array(op1, "op2.1, op2.2", "", op4)

scala> a.foreach( println )
op1
"op2.1
op2.2"

op4

手に入れたい

scala> val a = """op1,"op2.1,op2.2",,op4""".split(",")
a: Array[java.lang.String] = Array(op1, "op2.1, op2.2", "", op4)

scala> a.foreach( println )
op1
op2.1, op2.2

op4

しかし、文字列を分割するために使用する正規表現がわかりません

- 編集 -

私はこの質問で答えを見つけました: Java: splitting a comma-separated string but ignoring commas in quotes

4

1 に答える 1

16

この正規表現で分割すると、動作するはずです:,(?=([^\"]*\"[^\"]*\")*[^\"]*$)

于 2012-11-11T22:18:44.287 に答える