正则表达式处理逗号,双引号,引号

时间:2011-09-16 12:17:23

标签: java regex csv export-to-csv

我正在尝试从数据库中读取数据后生成CSV文件。现在,个人数据可以包含逗号,单引号和双引号。

请建议我如何在正则表达的帮助下处理这种情况。

4 个答案:

答案 0 :(得分:2)

您可以为CSV文件使用不同的分隔符吗?管道(|)也许?

答案 1 :(得分:2)

最简单的方法是在所有数据周围加上引号,然后您可以在数据中使用逗号,引号(双引号)和换行符而不会出现问题。

您只需通过用双引号替换它们来转义数据中的引号。您不需要正则表达式,只需使用常规字符串替换。

Apostrophes(单引号)在CSV格式中没有任何特殊含义,因此它们不是问题。

答案 2 :(得分:1)

嗯,逗号不是真正的问题,因为它们用双引号括起来表示字符串。单引号也是如此。你唯一需要做的就是逃避双引号。这是一个例子:

  乔说:“现在回家,不要迟到。我会陷入'大麻烦'。”

会变成

  “乔说:”“现在回家,不要迟到。我会陷入'大'麻烦。”“”

答案 3 :(得分:0)

编写功能性CSV解析器并不是一项简单的任务,即使数据格式如此简单。相反,请考虑使用库。我使用了CSVReader library,这很容易。该网站还包括代码示例。