繁体   English   中英

以veribose格式转换给定的正则表达式以使用可用于在asp.net中验证英国邮政编码的格式?

[英]Convert the given regular expression in veribose format to use a format usable to validate UK postcode in asp.net?

我有正则表达式我需要使用这个正则表达式来验证英国邮政编码。 我已将其转换为可与asp.net正则表达式引擎一起使用的格式。 谁能指导我,我所做的是正确的,或者是否有任何错误。 任何帮助将不胜感激。这些邮政编码返回为验证邮政编码W1A 0AX,SO10 9AA,FY9 9AA,WC1A 9AA。

Veribose格式

(GIR\s0AA) |
(
    # A9 or A99 prefix
    ( ([A-PR-UWYZ][0-9][0-9]?) |
         # AA99 prefix with some excluded areas
        (([A-PR-UWYZ][A-HK-Y][0-9](?<!(BR|FY|HA|HD|HG|HR|HS|HX|JE|LD|SM|SR|WC|WN|ZE)[0-9])[0-9]) |
         # AA9 prefix with some excluded areas
         ([A-PR-UWYZ][A-HK-Y](?<!AB|LL|SO)[0-9]) |
         # WC1A prefix
         (WC[0-9][A-Z]) |
         (
            # A9A prefix
           ([A-PR-UWYZ][0-9][A-HJKPSTUW]) |
            # AA9A prefix
           ([A-PR-UWYZ][A-HK-Y][0-9][ABEHMNPRVWXY])
         )
        )
      )
      # 9AA suffix
    \s[0-9][ABD-HJLNP-UW-Z]{2}
    )

格式我用来验证邮政编码如下

回来(

    Regex.IsMatch(postcode, "([GIR[ ]0AA])") ||
    Regex.IsMatch(postcode, "(^[A-PR-UWYZ][0-9][0-9]?[ ][0-9][ABD-HJLNP-UW-Z]{2}$)") ||
    Regex.IsMatch(postcode, "(^[A-PR-UWYZ][A-HK-Y][0-9](?<!(BR|FY|HA|HD|HG|HR|HS|HX|JE|LD|SM|SR|WC|WN|ZE)[0-9])[0-9][ ][0-9][ABD-HJLNP-UW-Z]{2}$)") ||
    Regex.IsMatch(postcode, "(^[[A-PR-UWYZ][A-HK-Y](?<!AB|LL|SO)[0-9][ ][0-9][ABD-HJLNP-UW-Z]{2}$)") ||
    Regex.IsMatch(postcode, "(^WC[0-9][A-Z][ ][0-9][ABD-HJLNP-UW-Z]{2}$)") ||
    Regex.IsMatch(postcode, "(^[A-PR-UWYZ][0-9][A-HJKPSTUW][ ][0-9][ABD-HJLNP-UW-Z]{2}$)") ||
    Regex.IsMatch(postcode, "(^[A-PR-UWYZ][A-HK-Y][0-9][ABEHMNPRVWXY][ ][0-9][ABD-HJLNP-UW-Z]{2}$)")

            );
    }

你可以用

(GIR\s0AA)|((([A-PR-UWYZ][0-9][0-9]?)|(([A-PR-UWYZ][A-HK-Y][0-9](?<!(BR|FY|HA|HD|HG|HR|HS|HX|JE|LD|SM|SR|WC|WN|ZE)[0-9])[0-9])|([A-PR-UWYZ][A-HK-Y](?<!AB|LL|SO)[0-9])|(WC[0-9][A-Z])|(([A-PR-UWYZ][0-9][A-HJKPSTUW])|([A-PR-UWYZ][A-HK-Y][0-9][ABEHMNPRVWXY]))))\s[0-9][ABD-HJLNP-UW-Z]{2})

请参阅正则表达式演示

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM