【问题标题】:Validate town and postal code string against a certain format using JavaScript's RegEx使用 JavaScript 的 RegEx 针对某种格式验证城镇和邮政编码字符串
【发布时间】:2018-08-28 00:04:39
【问题描述】:

我输入了城镇名称和邮政编码。

我想检查此输入的格式是否正确(如下所示)。 不需要检查城镇是否存在。


我想使用 RegEx(正则表达式)来检查它,但我找不到正确的解决方案。


有效的输入格式:

<Town Name> <Post Code>
<Town Name>, <Post Code>

示例输入:

Hamburg, 22850
Cambridge 44922

我想检查字母和数字是否用空格分隔(在城镇名称后面加上可选的逗号)。

【问题讨论】:

  • 如果您只是在寻找邮政编码,那么这应该就是您所需要的:(\d{5})$
  • @K.Dᴀᴠɪs 完全正确,但我想结合逗号和邮政编码检查城镇名称。每个部分本身都不是问题;)
  • 我是根据您的陈述做出的回复,“不需要检查城镇是否存在。” 但是您可以使用 ([\w\s]+),?\s(\d{5})$,其中包含 2 个捕获组。 $1 将返回城镇,$2 将返回邮政编码。 See it Live Here

标签: javascript regex postal-code city


【解决方案1】:

这是您正在寻找的正则表达式:

^[A-Za-z]+,? [0-9]{5}$

Try it online!


说明

 [A-Za-z]+ 检查第一位是否只是从 A 到 Z 的字母(不区分大小写)。
          ,?允许 0 或 1 个逗号
            ␠ 检查是否有空格
              [0-9]{5} 检查后半部分是否仅由 0 到 9 的 5 位数字组成
^ $ 确保城镇名称和邮政编码是字符串包含的所有内容

【讨论】:

  • 有没有办法检查邮政编码的长度是否正好为 5?
  • 有,等我更新一下答案
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2013-07-24
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多