什么是SWIFT代码的正确RegEx表达式?

时间:2010-06-12 09:27:49

标签: asp.net regex validation swift-mt

我必须在我的网页ASP.NET页面上过滤用户输入:

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

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

如何正确实施此规则?

3 个答案:

答案 0 :(得分:25)

快速代码应为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以查看内容,但不幸的是,获取副本并不是免费的。

答案 1 :(得分:3)

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

/[A-Z]{6}[A-Z0-9]{2}([A-Z0-9]{3})?/i

答案 2 :(得分:3)

这应该可以解决问题

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