Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/regex/18.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
使用javascript正则表达式验证每个列表项一个字母的逗号列表_Javascript_Regex - Fatal编程技术网

使用javascript正则表达式验证每个列表项一个字母的逗号列表

使用javascript正则表达式验证每个列表项一个字母的逗号列表,javascript,regex,Javascript,Regex,尝试验证从a到字母L的所有大写字母的逗号列表。我可能会写一些东西来循环列表,确保每个项目都有一个A-L字母,但我更喜欢使用正则表达式。这可能吗 有效期: A, G, F 无效: Ab, G, F, Car 您可以使用此正则表达式验证用逗号分隔的字母A-L的输入: /^[A-L](?:\s*,\s*[A-L])*$/ 分手: ^ # line start [A-L] # match letters [A-L] (?: # start non-cap

尝试验证从a到字母L的所有大写字母的逗号列表。我可能会写一些东西来循环列表,确保每个项目都有一个A-L字母,但我更喜欢使用正则表达式。这可能吗

有效期:

A, G, F
无效:

Ab, G, F, Car

您可以使用此正则表达式验证用逗号分隔的字母
A-L
的输入:

/^[A-L](?:\s*,\s*[A-L])*$/

分手:

^          # line start
[A-L]      # match letters [A-L]
(?:        # start non-capturing group
  \s*      # match 0 or more white-spaces
  ,        # match a comma
  \s*      # match 0 or more white-spaces
  [A-L]    # match letters [A-L]
)*         # end non-capturing group, * makes this group match 0 or more times
$          # line end

实际上,我在发布这篇文章后不久就回答了自己的问题。以下正则表达式适用于:

^(?!,)(,?\s?[A-L])+$
每项仅允许一个字符,大写,空格可选,无结尾逗号

谢谢你的回答,我相信有很多方法可以做到这一点


为什么要放弃数组操作?它们可能相当优雅

'A, G, F'.split(', ').every(x => x.length === 1 && x >= 'A' && x <= 'L')

'A,G,F'。拆分(',')。每个(x=>x.length===1&&x>='A'&&x我测试了这个,它和我刚刚写的一样好,谢谢!你为此否决了我的投票?你本可以回答我的问题,我问了regex。我没有否决,但它会验证
ABCD
aa一个有效的输入。你是正确的。你发布的答案是准确的。我将标记为答案