Regex从字符串中选择csv值

本文关键字:csv 选择 字符串 Regex | 更新日期: 2023-09-27 18:07:43

我通常有一个字符串,可能如下所示,我希望提取内容并通过拆分值将其解析为数组。

COUNT(123,453,123)

出于验证的原因,可能会在内容的末尾留下逗号

COUNT(123,453,123,)

到目前为止,我的代码如下。

Regex.Match(testString, @"(?<='().+?(?='))").ToString().Split(',').Select(int.Parse).ToList();

它在第一种情况下运行良好,但在后一种情况下会抛出异常。

异常

输入字符串的格式不正确

如果正则表达式后面没有其他数字,如何使其忽略逗号?

Regex从字符串中选择csv值

(?<='().+?(?=,?'))
             ^^

只需将其添加到lookahead即可。请参阅演示。

https://regex101.com/r/rO0yD8/14