我无法为以下条件编写正确的正则表达式:
-单词应包含字母(例如,从A到E)
-字母应按字母顺序排列,但不要在两个字母之间跳过! ,例如:ABCD是正确的单词,ACD不是因为缺少B
-它可以以字母中的任何字母开头,例如:BCD以及DE都是有效的,但是BCE并不是因为D缺失了
-不重复字母,例如:AAB无效,DEE无效
我尝试了以下逻辑: ^ A?B?C?D?E?$
但是,我可以在不允许的字母之间跳过。 我该怎么做才能使字母之间不可跳过?
答案 0 :(得分:1)
没有简单的方法可以执行此操作,正则表达式不支持(x + 1)类型的计算。 但是,您可以执行以下丑陋的操作:
^(?:A|AB|ABC|ABCD|ABCDE|B|BC|BCD|BCDE|C|CD|CDE|D|DE|E)$