带有数字的CSV的正则表达式

时间:2010-06-14 20:38:59

标签: regex string csv

我正在寻找一些正则表达式来帮助解析我的CSV文件。

该文件包含

number,number
number,number
Comment I want to skip
number,number
number,number

前:

319,5446
564425,87
Text to skip
27,765564

我将每一行读成一个字符串,我想使用一些常规快递来确保该行符合(数字,数字)的模式。如果没有,则不要使用该行。

4 个答案:

答案 0 :(得分:4)

这是一个解决方案:

^ \ d +,\ d + $

答案 1 :(得分:1)

这应与您的号码和行开头/结尾匹配:

^\d+,\d+$

答案 2 :(得分:1)

通常,您可以在RegExp下方使用逗号分隔的任意数字列表:

^\d+(,\d+)*$

希望获得帮助。

答案 3 :(得分:0)

您想要使用哪种语言? 在perl:

read in each line of the csv file and save to $line
if($line !~ m/\d+, \d+/) {
    Do whatever you are going to do with the line with 2 numbers
} 

在Java中使用this网站来提供帮助:

 read in each line of the csv file and save to variable line
 Pattern p = Pattern.compile("\d+, \d+"); // remove space if it isn't in file
 Matcher m = p.matcher(line);
 if (m.find()) {
    //it matches
 }