如果正则表达式中的双引号内有逗号,如何捕获组?

How to capture group if it have comma inside double quotes in regex?

我是这个正则表达式匹配的新手,有如下示例输入。,

1,2,Name,"12,3"
1,2,Name,12

现在我需要一个正则表达式来拆分类似于下面捕获组的两行..,

input.1->1
input.2->2
input.3->Name
input.4->"12,3"

input.1->1
input.2->2
input.3->Name
input.4->12

我找到了正则表达式并像这样在 ExtractTextProcessor 中使用它。,

(.+),(.+),(.+),(.+)

匹配如下..,

input.1->1,2
input.2->Name
input.3->"12
input.4->3"

如果我做错了什么就阻止我

请任何人指导我解决这个问题。,

谢谢

这应该有效。

(\d+),(\d+),(\w+),(\d+$|(?:\"*\d*,*)*)

输入:

1,2,Name,"12,3"
1,2,Name,12

输出:

#1
 = 1
 = 2
 = Name
 = "12,3"

#2
 = 1
 = 2
 = Name
 = 12