我正在考虑使用正则表达式来限制城市名称(全球)中的标点符号。什么是相当包容的白名单?
我在想:
(space)
. period
- hyphen
' apostrophe
还想可能是逗号或斜线,但我没有任何例子。还有其他人吗?
我正在考虑使用正则表达式来限制城市名称(全球)中的标点符号。什么是相当包容的白名单?
我在想:
(space)
. period
- hyphen
' apostrophe
还想可能是逗号或斜线,但我没有任何例子。还有其他人吗?
这是城市名称中最具包容性的标点符号白名单。当有人在键盘上输入撇号时,可能不会使用 ASCII 撇号代码点。
如果您已经识别了提交文本的编码,您应该能够查看它是否属于标点符号块:
/\p{InGeneral_Punctuation}/
如果您将自己限制为拉丁扩展,请使用以下内容:
/\p{InLatin_Extended-A}/
另外,问问自己:有人在我的城市名称中加上一个有趣的字符会产生什么后果?如果我排除太多,这是否比某人无法输入正确地址的后果更糟?
USPS 标准地址格式要求去除除主要和/或次要街道地址行中使用的“必要”连字符和破折号以及 ZIP 中的连字符之外的所有特殊字符。
因此,如果地址是:
John O'Toole
456 N 4-1/2 St
San José, CA 99999-4545
邮局更喜欢在信封上贴上以下标签:
John O Toole
456 N 4 1/2 St
San Jose CA 9999-4545