简单的SQL正则表达式的问题

时间:2016-08-05 07:36:44

标签: java sql regex

我有一个Task,可以将列从SQL语句中分离出来。这对我来说很有效,在#34;"上进行了简单的Java拆分。但现在我在列中有其他逗号的问题。 我想这个问题的答案很简单,但我不介意。

示例:

资料来源:

"Col_A BIGINT , COL_B TIMESTAMP , COL_C DECIMAL(10,30) , COL_D VARCHAR(20)"

我想要的输出:

Array[0] = Col_A BIGINT
Array[1] = COL_B TIMESTAMP
Array[2] = COL_C DECIMAL(10,30)
Array[3] = COL_D VARCHAR(20)

真实(和明显)的输出:

Array[0] = Col_A BIGINT
Array[1] = COL_B TIMESTAMP
Array[2] = COL_C DECIMAL(10
Array[3] = 30)
Array[4] = COL_D VARCHAR(20)

明显的问题是两位小数之间的逗号(COL_C)。

现在我问你这个问题是否有一个很好的解决方案。我真的想用一个分割来接收不同的列。但是我怎样才能避免十进制描述中的错误分割。

我希望你们能理解我的问题。英语不是我的母语。

1 个答案:

答案 0 :(得分:1)

您只需使用正则表达式分割给定字符串:{% url 'vote' question.id %}

找到未跟随数字的,(?!\d)

代码示例:

,

Demo and Explaination of regex