こんにちは、二重引用符の間でデータを抽出する必要があります。私の文字列が次の場合:
"""rach"",""jkdj""","""abc"",13","123,4.45,""19""","3.33,""123"",""2.221"""
私の文字列は CSV ファイルからのデータです。二重引用符の間でデータを抽出する必要があります。NSRegularExpression でこれを達成しようとしています。
私の正規表現パターンは次のとおりです。
NSString *exp=@"\".+\""
再び文字列全体を一致として取得します。どこが間違っていますか?入手方法""rach"", ""jkdj""
など""abc"", 13
...
ありがとう@Derek.あなたの返信は私を大いに助けてくれました.私のデータは奇妙です.CSVファイルへのデータのさまざまな組み合わせを試しているだけです.CSVファイルへのエントリは多数の組み合わせにすることができます.存在する場合と存在しない場合があります.私が欲しいのは、二重引用符の間のデータだけです (二重引用符自体が含まれていても問題ありません)。私が欲しいものを説明できることを願っています。あなたの助けを借りて、私は書いていますこの文字列の正規表現。
NSString *exp=@"[^,]\"*[^,]*,(([^,]\"*?,*?)*|(\"*[^,]*\"*)*)";
ここで exp は私の正規表現です。
"""pav"",""ani""","""abc"",13","123,4.45,""19""","3.33,""123"",""2.221"""
これが私の文字列です。最初の二重引用符は ""pav"",""ani"" です。2 番目は ""abc"",13 です。3 番目は 123,4.45,""19"" です。4 番目は 3.33 です。 ,""123"",""2.221"".したがって、含まれている二重引用符との一致が問題にならないため、これらのそれぞれが必要です。
試合ごとに次のものを取得する必要があります。
"""pav"",""ani"""
"""abc"",13"
"123,4.45,""19"""
"3.33,""123"",""2.221"""
しかし、私が言及した正規表現でこれを取得します。
2013-09-20 11:09:04.398 regexPractice[13968] match: """pav"",""ani"""
2013-09-20 11:09:04.425 regexPractice[13968] match: """abc"",13"
2013-09-20 11:09:04.434 regexPractice[13968] match: "123,4.45
2013-09-20 11:09:04.442 regexPractice[13968] match: ""19""","3.33
2013-09-20 11:09:04.454 regexPractice[13968] match: ""123"",""2.221"""
正規表現を少し変更する必要があることがわかりますが、どこを見つけることができません。
手がかりはありますか?ティア