我们有一个要求,以限制域(假设gmail.com)不被用户在注册流程中使用。对于电子邮件地址验证,我们在自定义策略中使用正则表达式。
<ClaimType Id="email">
<Restriction>
<Pattern RegularExpression="^(?![a-zA-Z0-9.!#$%&'^_`{}~\-]+@(gmail.com))" HelpText="Please enter an allowed email address." />
</Restriction>
字符串
但是当用户尝试输入email protected(https://stackoverflow.com/cdn-cgi/l/email-protection)时,在电子邮件验证步骤中验证失败,因为正则表达式不区分大小写。请建议更好的方法来处理它。
1条答案
按热度按时间o4hqfura1#
我找到了一些解决方案,有多个技术配置文件。
1.触发“ChangeCase”声明转换的技术概要文件,将电子邮件地址转换为邮箱。
字符串
技术资料
型
1.触发“ParseDomain”声明转换的技术配置文件。
型
1.将域名声明与值“gmail.com“进行比较
的字符串
1.AssertBooleanClaim(isDomainMatches)IsEqual To Value
型
使用ValidationTechnicalProfile
型