代码之家  ›  专栏  ›  技术社区  ›  abatishchev Karl Johan

对于swift代码,正确的regex表达式是什么?

  •  7
  • abatishchev Karl Johan  · 技术社区  · 14 年前

    我必须在Web ASP.NET页上将用户输入筛选为:

    <asp:TextBox runat="server" ID="recipientBankIDTextBox" MaxLength="11" />
    <asp:RegularExpressionValidator runat="server" ValidationExpression="?" ControlToValidate="recipientBankIDTextBox" ErrorMessage="*" />
    

    据我所知,Swift代码必须包含5或6个字母,其他符号的总长度为11个字母数字。

    如何正确实施这一规则?

    3 回复  |  直到 9 年前
        1
  •  24
  •   Mark Byers    14 年前

    SWIFT代码应为8或11个字母或数字,其中前六个必须是字母。但不管怎样,不管它是什么,重要的是你理解如何创建这样一个表达式。这是一个带有注释的正则表达式,用于显示这些部分的含义。

    ^[A-Z]{6}[A-Z0-9]{2}([A-Z0-9]{3})?$
           ^          ^           ^  ^
           |          |           |  |
           6 letters  2 letters   3 letters or digits
                      or digits      |
                                     last three are optional
    

    维基百科上的所有示例都只显示大写字母a-z。如果您还想允许小写字母,请更改 A-Z A-Za-z . 我会检查 the ISO standard 看看上面说了什么,但不幸的是,要得到一份副本是不自由的。

        2
  •  3
  •   Amber    14 年前

    根据 http://en.wikipedia.org/wiki/ISO_9362

    /[A-Z]{6}[A-Z0-9]{2}([A-Z0-9]{3})?/i
    
        3
  •  3
  •   codingbadger    14 年前

    这应该会起作用的

    ^([a-zA-Z]){4}([a-zA-Z]){2}([0-9a-zA-Z]){2}([0-9a-zA-Z]{3})?$