我已经查看了MSDN,并搜索了一下,找不到我应该如何解释这个表达式…
这是一个地址参数....
^[a-zA-Z\d/\\\\]{0,80}$
我得到任何大写/小写字母,数字都是允许的,最多允许80个字符。
我不明白4个是干什么用的。
我希望这个正则表达式允许特殊字符,因为它是一个表单的街道地址输入字段。例如,我希望这是在说,像塔姆·奥山特广场2400号或比林斯-哈珀特街1904号这样的东西可以进入这个领域。
有5个多余的字符(全部由
转义)。您只需要一个(当然是转义的)就可以输入字面量的
。
也就是说,这看起来是一种验证街道地址的糟糕方式:
- 不允许在地址 中使用连字符(如
- 它将地址条目限制为80个字符,这似乎是任意的,可能太短
101-204 Main st
)或撇号(如O'shanter
)或其他几个字符。一般来说,我不会验证地址,除非您确实想要进行邮局(或快递公司)查找以验证它是一个真实的、实际的地址,即使这样,它也充满了问题(例如,新地址尚未在数据库中,或者它包含一个不在数据库中的Suite #)。
支付处理程序还将允许您根据信用卡号码验证地址,主要是作为一种欺诈保护形式。
验证的意义是什么?如果您要运送东西,那么验证正确地址的责任就落在客户身上(他可能既要付款又要输入这个地址)。除非你知道为什么它需要是有效的,以及什么是"有效的",否则你不能使用验证。
你可以要求非空白,或者最少#个字符,但即使这样也可能会让你在国际用户中遇到麻烦(取决于这个应用程序的范围)。