使用正则表达式和硒验证邮政编码

时间:2019-06-12 21:11:21

标签: c# regex

因此,使用硒,我可以获取用户的某些地址 例如: 4034 Wells Branch,旧金山,加利福尼亚州34123

是否可以使用一种方法来确保邮政编码为5位数字?

1 个答案:

答案 0 :(得分:0)

例如,是的,我们可以将组定义为右边界,并包括可能使它成为非五位数的内容,例如(?:[^-0-9]),我们的表达式可以是:

\b([0-9]{5})\b(?:[^-0-9])

Demo 1

或者我们将添加仅对5位邮政编码有效的右边界,例如:

\b([0-9]{5})\b(?:\s|$)

Demo 2

测试

using System;
using System.Text.RegularExpressions;

public class Example
{
    public static void Main()
    {
        string pattern = @"\b([0-9]{5})\b(?:\s|$)";
        string input = @"4034 Wells Branch, San Francisco CA 34123
4034 Wells Branch, San Francisco CA 34123-
4034 Wells Branch, San Francisco CA 34123-1234
4034 Wells Branch, San Francisco CA 341231234";
        RegexOptions options = RegexOptions.Multiline;

        foreach (Match m in Regex.Matches(input, pattern, options))
        {
            Console.WriteLine("'{0}' found at index {1}.", m.Value, m.Index);
        }
    }
}

RegEx电路

jex.im可视化正则表达式:

enter image description here