[英]VB.NET Regex Match 5 and 10 char Zip Code in 1 Group
我正在使用此代码
(\d{5})([\-]\d{4})?\s*
哪个与我的邮递区号相符
12345-1234
2组
1. 12345
2. -1234
我需要它来匹配1个单一组中的12345(5个字符)和12345-1234(10个字符)。 那可能吗?
编辑:
(\d{5}-\d{4}|\d{5})
(感谢vcsjones)满足了原始问题。
但是,如果邮编格式错误(例如12345-123),它不会只检索12345。
有什么办法吗?
您可以尝试一下:
(\d{5}-\d{4}|\d{5})
编辑:
但是,如果邮编格式错误(例如12345-123),它不会只检索12345。
你确定吗? 这将产生一个匹配:
Dim zip5 As String = "12345"
Dim zip9 As String = "12345-6789"
Dim partialZip9 = "12345-33"
Dim regex As New Regex("(\d{5}-\d{4}|\d{5})")
Dim zip5Match = regex.Match(zip5).Groups(0).Value 'Produces 12345
Dim zip9Match = regex.Match(zip9).Groups(0).Value 'Produces 12345-6789
Dim partialZip9Match = regex.Match(partialZip9).Groups(0).Value 'Produces 12345
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.