0

我尝试拆分 sql 值以修改值(日期、布尔值、...)。例如,我有以下价值观:

('im a value','im a second value with, test',478,20/05/2010 16:56:32)

我如何拆分只有 4 个值的值:

  • '我是一个价值'
  • '我是第二个值,测试'
  • 478
  • 2010 年 5 月 20 日 16:56:32

不是 5 个值:

  • '我是一个价值'
  • '我是第二个值
  • 测试'
  • 478
  • 2010 年 5 月 20 日 16:56:32

谢谢

编辑:

新例子:

  INSERT INTO ACCES (id,type,com, date,make) VALUES (478,'action','test commentaire, new test',20/05/2010 16:56:3,False);

结果

 INSERT INTO ACCES (id,type,com, date,make) VALUES (478,'action','test commentaire, new test',1274367363,0);
4

2 回答 2

1

您可以迭代地执行此操作,也可以通过以下方式执行此操作:

Java:拆分逗号分隔的字符串但忽略引号中的逗号

简而言之,您使用正则表达式进行拆分:

line.split(",(?=([^\"]*\"[^\"]*\")*[^\"]*$)");
于 2013-01-07T13:46:10.250 回答
0

我只知道一种方法可以做到这一点。

  1. 将输入字符串按“,”拆分为数组
  2. 如果 I 字符串以 "'" 开头并且 (I+1) 字符串以 "'" 结尾,则将其组合到 I 元素
  3. 删除 I+1 元素

如果你需要实现,我可以稍后再写

于 2013-01-07T13:39:30.040 回答