用于CSV验证的RegEx + jQuery

时间:2009-04-22 18:09:23

标签: jquery regex csv

使用jQuery验证插件,但它没有CSV验证。我已对此进行了额外的验证,但无法使RegEx正确。

这就是我所拥有的:

jQuery.validator.addMethod("csv", function(value, element) {
  return this.optional(element) || /([\w.$]+?(,[\w.]+)+)/.test(value);
}, "Must be comma separated if entering multiple values: value1,value2");

对RegEx的任何想法?

([\w.$]+?(,[\w.]+)+)

我要做的是让用户输入一个值,该值可以是CSV格式的单个值或多个值。

示例1:

  

值1

示例2:

  

value1,value2等......没有限制

2 个答案:

答案 0 :(得分:3)

根据Chad的示例,如果您只想要单词字符,只需将[^,]切换为\w即可。如果您实际上只需要字母和数字,则需要[a-z0-9]之类的内容,因为\w包含下划线字符。

根据您的评论,看看是否

/^([a-z0-9])+(,[a-z0-9]+)*$/

诀窍。

答案 1 :(得分:0)

也许我并不完全理解你需要什么,但似乎你可以用这个正则表达式捕获所有的值:

/([^,]+),?/

这将允许值中的空格和特殊字符,我不确定您是否需要,因为您的尝试似乎只是尝试允许单词字符。

如果你只是试图检查他们是否输入了有效的东西,我不确定你会想要什么“无效”。在我看来,几乎任何事情都是有效的。如果它没有任何逗号,则它是单个值。如果是,那就是多个值。也许如果你提供一些关于你期望的数据的更多细节,我可以写一个更好的验证表达式。