正規表現でCSVをパースする。CSVの条件は - 全ての値はダブルクォート`"`で囲まれており、値内のダブルクォートはエスケープされている - 各値はカンマ`,`で区切られており、区切りの前後にスペースはない で、正規表現は ``` "(.*?(?<!\\))",? ``` となる。これは、以下のような例にヒットする。 ``` "a" "a","b","c" "\"a","b\"","\"c\"" ",a","b,",",c," ``` Javaでの例は以下の通り。 ```java Pattern pattern = Pattern.compile("\"(.*?(?<!\\\\))\",?"); Matcher matcher = pattern.matcher(CSV_STRING); while (matcher.find()) { System.out.println(matcher.group(1)); } ```
2019/08/06 17:07:34

コメント (0)

あなたもコメントしてみませんか

アカウント新規作成(無料)

既にアカウントを持っている方は ログイン