我正在寻找一个正则表达式来验证一组用逗号分隔的非重复字符。
给定像ABCD这样的字符集
匹配任何用逗号分隔的排列(无重复字符)
一些匹配将是:
一个
C
C,B
B,D
D,B,A,C
没有匹配的结果是:
A,A
美国广播公司
D,B,A,B
这将起作用,但不允许使用逗号:
\b(?!(?:.\B)*(.)(?:\B.)*\1)[ABCD]+\b
最佳答案
^(?!.*?([A-D]).*?\1)[A-D](?:,[A-D])*$
试试看。看演示。
https://regex101.com/r/uC8uO6/8