从逗号分隔值文件中捕获数字和字符串

时间:2015-06-29 15:00:24

标签: regex

我有一个文件,其中包含以双引号开头和结尾的字符串。每个字符串都可以包含逗号。 数字不以双引号开头或结尾。每个整数和字符串用逗号分隔。 也可以使用空值。

我想用每个字符串和数字组成小组。我试图一次捕获每个组。

我创建了这个正则表达式,除非字符串中有逗号,否则它适用于所有情况:

/(?:"?([^"]*)"?,){2}/U

如果我删除了ungreedy运算符,则正则表达式适用于除空值之外的所有情况。

以下是日志文件的示例:

196778,"df,fdfsdf","4.4","ds-sdads231-33","mmh",1,,,,,,,023,1,"20150,62519535TY"

https://regex101.com/r/kO5wM4/3

1 个答案:

答案 0 :(得分:1)

您可以使用此正则表达式:

(?:(?:"([^"]*)"|([^,]*))(?:,|$)){2}

RegEx Demo