ASP.NET ValidationExpression忽略区分大小写 我现在有一个我的ASP.NET控件的验证表达式,它确保用户已经输入,我们认为是一个有效的英国邮政编码: ValidationExpression="^\s*([A-Z]{1,2}[0-9R][0-9A-Z]?\s*[0-9][ABD-HJLNP-UW-Z]{2})\s*$"

ASP.NET ValidationExpression忽略区分大小写 我现在有一个我的ASP.NET控件的验证表达式,它确保用户已经输入,我们认为是一个有效的英国邮政编码: ValidationExpression="^\s*([A-Z]{1,2}[0-9R][0-9A-Z]?\s*[0-9][ABD-HJLNP-UW-Z]{2})\s*$",asp.net,regex,validation,case-sensitive,Asp.net,Regex,Validation,Case Sensitive,如果用户使用大写字母输入他们的邮政编码,这很好,但我希望它忽略大小写,并且不确定如何将其合并到上述表达式中 我希望它忽略这个案子 通过将此符号添加到regex:i激活忽略大小写标志 您的正则表达式希望如下所示: ValidationExpression="/^\s*([A-Z]{1,2}[0-9R][0-9A-Z]?\s*[0-9][ABD-HJLNP-UW-Z]{2})\s*$/i" 唯一简单的解决方案是将小写字母放在所有地方,即:[0-9A-Za-z] 其他解决方案并不总是可靠的。此解决方

如果用户使用大写字母输入他们的邮政编码,这很好,但我希望它忽略大小写,并且不确定如何将其合并到上述表达式中

我希望它忽略这个案子

通过将此符号添加到regex:
i
激活忽略大小写标志

您的正则表达式希望如下所示:

ValidationExpression="/^\s*([A-Z]{1,2}[0-9R][0-9A-Z]?\s*[0-9][ABD-HJLNP-UW-Z]{2})\s*$/i"

唯一简单的解决方案是将小写字母放在所有地方,即:
[0-9A-Za-z]


其他解决方案并不总是可靠的。

此解决方案会降低正则表达式的可读性和可维护性。的确,但(?i)不适用于任何地方不幸的是,你说的“任何地方”是什么意思?我曾在我自己的.net应用程序中尝试过,但从未奏效,因为我们这里讨论的是一个示例,它有点变化,我只是尝试了一下,但每当调用验证时,我都会收到一个javascript错误:“无效正则表达式:/^(?I)\s*([a-Z]{1,2}[0-9R][0-9A-Z]?\s*[0-9][ABD-HJLNP-UW-Z]{2})\s*$/:无效组'@marcusstarnes,因此它是客户端正则表达式。我已经相应地更新了我的正则表达式。我尝试了这个客户端正则表达式,虽然它不再出错,但它并没有验证正则表达式。此后,我采用了bresleveloper的方法,只在表达式中添加小写字母,这似乎效果很好。谢谢。我也尝试了
“[A-Z]*/I”
进行测试,但它不接受小写字符;)。