我正在尝试构造一个正则表达式来实现以下限制:
该值可以是任意长度,但不能包含类似的字母/数字,这在打印时可能会导致混淆。 例如,1(数字),I(大写拉丁语i)和l(小写拉丁语L)看起来相似;可能还有其他这样的例子
我已经尝试了一些方法,但无法使其工作,任何帮助将不胜感激:谢谢。
例如:我可以有Linux1
,但不能LINUX1
或linux1
我怀疑正则表达式是这里要走的路,但如果你真的需要,你可能需要根据具体情况处理它们:(1I)|(I1)|([Ii][Ll])|([Ll][Ii])
.因此,如果正则表达式匹配,则必须拒绝该字符串。可以在此处找到正则表达式的工作示例。
根据您的评论,您可以尝试使用类似的东西: (1.*I)|(I.*1)|([Ii].*[Ll])|([Ll].*[Ii])
.可以在此处找到有效的正则表达式。此正则表达式还将在被视为相似的值之间进行检查。