美国和其他格式zip的正则表达式

Ran*_*aul 0 regex groovy

正在使用常规表达式为groovy中的以下zip格式

Includes a letter (L12345)
Includes a dash plus 4 more numbers (77056-1234)
Includes spaces (77056 1234)
Run Code Online (Sandbox Code Playgroud)

我有这个"^\d {5}( - \d {4})?\ $"但它与所需的格式不匹配.有人可以帮帮我吗?

Tho*_*ris 5

^\d{5}(?:[-\s]\d{4})?$
Run Code Online (Sandbox Code Playgroud)
  • ^ =字符串的开头.
  • \d{5} =匹配5位数(条件1,2,3)
  • (?:…) =分组
  • [-\s] =匹配空格(条件3)或连字符(条件2)
  • \d{4} =匹配4位数(条件2,3)
  • …? =之前的模式是可选的(条件1)
  • $ =字符串的结尾.

这是来自以下问题,希望它有所帮助

邮政编码的正则表达式

对于optiona startingil字母使用

[A-Z]?
Run Code Online (Sandbox Code Playgroud)

使这封信可选.{1}是多余的.(当然你也可以写出[A-Z]{0,1}哪些意思相同,但这?就是它的用途.)

我认为它应该追求^但没有机会进行测试