我现在编写一个词汇算法,检查用户是否正确输入了单词。我有以下情况:
该单词的正确解决方案是“part1,part2”。
用户应该能够输入“part1”(答案1),“part2”(答案2)或“part1,part2”(答案3)。
我现在尝试匹配用户给出的字符串与以下,自动创建的regex表达式:
该单词的正确解决方案是“part1,part2”。
用户应该能够输入“part1”(答案1),“part2”(答案2)或“part1,part2”(答案3)。
我现在尝试匹配用户给出的字符串与以下,自动创建的regex表达式:
^(part1|part2)$
这只返回答案1和2正确,而答案3将是错误的。我是怎么想知道是否有一个类似于|的运算符说“和/或”而不是“任一…或”。
任何人可以帮助我在这里?
我想假设你想动态构建一个正则表达式包含除part1和part2之外的其他单词,并且你想要顺序不重要。如果是这样,你可以使用这样的东西:
((^|,)(part1|part2|part3))+$
正匹配:
part1 part2,part1 part1,part2,part3
否定匹配:
part1,//with and without trailing spaces. part3,otherpart1