我想创建一个包含字符“imsxeADSUXju”的 ABNF 规则。每个字符都是可选的。顺序无关紧要,但一个角色不得出现多次。
例如:它必须匹配
"i" "im" "mi" "" "uUsejXx" "imsxeADSUXju"
但不匹配
"iim" "UmUu" "imsss"
我创建了以下规则,但它不会阻止一个字符出现多次:
options = 0*12( "i" / "m" / "s" / "x" / "e" / "A" / "D" / "S" / "U" / "X" / "j" / "u" )
在此规则中,顺序很重要:
options = [ "i" ] [ "m" ] [ "s" ] [ "x" ] [ "e" ] [ "A" ] [ "D" ] [ "S" ] [ "U" ] [ "X" ] [ "j" ] [ "u" ]
我如何编写一个忽略顺序但也防止双打的规则?