首页 > 解决方案 > 正则表达式模式允许忽略大小写的字母

问题描述

在注册期间有一个密码的正则表达式模式。要求是“使用 8 个或更多字符,混合字母、数字和符号”

具有适用于上述要求的正则表达式,目前正则表达式模式至少检查不需要的大写字母。不论大小写,只应出现字母。在我下面的显示正则表达式模式中应该修改什么。

<f:validateRegex pattern="((?=.*\d)(?=.*[a-z])(?=.*[@#$%]).{8,15})"/>

我搜索了各种博客以获得具体的解决方案,但没有满足确切的需求。唯一的结论是使用 /i 忽略大小写。由于我对正则表达式的构建不满意并且过去没有工作过,所以想要进行修改以呈现正则表达式。

标签: regexregex-lookaroundsregex-negationregex-groupregex-greedy

解决方案


如果上述模式区分大小写(看起来它必须包含小a写到z),请尝试添加A-Za-z模式中。

那是:

<f:validateRegex pattern="((?=.*\d)(?=.*[a-zA-Z])(?=.*[@#$%]).{8,15})"/>

推荐阅读