java - 使用 String.split() 拆分时转义 ',' 分隔符

标签 java regex csv

我正在尝试读取文件,因此当我收到 ',' 逗号分隔符时,我会拆分字段。然而,有些字段中有 ',' ,但它们用双引号括起来,因此如何将其拆分以转义 , 分隔符。 这是我所做的

String[] cols = line.split(Pattern.quote(","));

我应该如何仅在 Java 中使用 split() 来修改它。另外,如果分隔符是管道 '|',我必须进行哪些更改?

最佳答案

我回答过类似的问题here 。根据您的任务修改的第一个表达式将显示为

,(?=([^"]*"[^"]*")*[^"]*$)

此表达式通过确保其后有偶数个引号来标识未加引号的逗号。

关于java - 使用 String.split() 拆分时转义 ',' 分隔符,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8090693/

相关文章:

ruby - 如何使用 Ruby 将 CSV 文件读入 HTML 表格?

Java变换矩阵运算

java - GAE 中的 AES-256 实现

regex - 在 Vim 中忽略部分搜索模式中的大小写

c# - 用于验证字符串仅包含 0 - 9、+、#、*、[ 和 ] 的正则表达式

python - 将文件夹的多个 csv 文件加载到一个数据框中

python - 如何避免 pandas 在保存的 csv 中创建索引

java - 我如何压缩这些返回语句或一起避免 checkstyle 错误?

java - JFrame 上的计数器

regex - 如何在此正则表达式中包含负十进制数?