用于筛选相似字符的正则表达式



我正在尝试构造一个正则表达式来实现以下限制:

该值可以是任意长度,但不能包含类似的字母/数字,这在打印时可能会导致混淆。 例如,1(数字),I(大写拉丁语i)和l(小写拉丁语L)看起来相似;可能还有其他这样的例子

我已经尝试了一些方法,但无法使其工作,任何帮助将不胜感激:谢谢。

例如:我可以有Linux1,但不能LINUX1linux1

我怀疑正则表达式是这里要走的路,但如果你真的需要,你可能需要根据具体情况处理它们:(1I)|(I1)|([Ii][Ll])|([Ll][Ii]) .因此,如果正则表达式匹配,则必须拒绝该字符串。可以在此处找到正则表达式的工作示例。

根据您的评论,您可以尝试使用类似的东西: (1.*I)|(I.*1)|([Ii].*[Ll])|([Ll].*[Ii]) .可以在此处找到有效的正则表达式。此正则表达式还将在被视为相似的值之间进行检查。

最新更新