解除SWIFT消息中的某些单词

时间:2014-03-14 12:10:48

标签: c# .net regex swift-mt

我有以下正则表达式:

(?<=[^:]:)?([a-zA-Z]{6}\w[a-zA-Z]{4})

正在寻找SWIFT BIC代码的每个实例。

SWIFT代码由8或11个字符组成。当给出8位代码时,它指的是主办公室。

  1. 前4个字符 - 银行代码(仅限字母)
  2. 接下来的2个字符 - ISO 3166-1 alpha-2国家/地区代码(仅限字母)
  3. 接下来的2个字符 - 位置代码(字母和数字)(被动参与者将拥有&#34; 1&#34;在第二个字符中)
  4. 最后3个字符 - 分支代码,可选(&#39; XXX&#39;主办公室)(字母和数字)
  5. 因此,考虑到上面的列表项和我的正则表达式,我试图从这个exmaple字符串中取出所有BICS。屏幕截图显示了我正在观看的正确和错误的内容。

    enter image description here

    你可以在顶部看到,我不在那里。我只需要撤回这些:

    • BARCGB2LXXX
    • BARCGB2LXXX
    • HSBCGB2LXXX
    • HSBCGB2LXXX
    • RBOSGB2RTCM
    • SABCIR2HXXX

    修改

    也许最好量化一下这个正则表达式是否可以在.NET应用程序中使用

1 个答案:

答案 0 :(得分:2)

假设代码位于每个字符串的末尾,这将起作用:

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

demo here