我有以下正则表达式:
(?<=[^:]:)?([a-zA-Z]{6}\w[a-zA-Z]{4})
它正在寻找 SWIFT BIC 代码的每个实例。
SWIFT 代码由 8 或 11 个字符组成。当给出8位代码时,它指的是主要办公室。
- 前 4 个字符 - 银行代码(仅限字母)
- 接下来的 2 个字符 - ISO 3166-1 alpha-2 国家代码(仅限字母)
- 接下来的 2 个字符 - 位置代码(字母和数字)(被动参与者将在第二个字符中有“1”)
- 最后 3 个字符 - 分公司代码,可选(“XXX”代表主要办公室)(字母和数字)
因此,鉴于上面的列表项和我的正则表达式,我试图从这个示例字符串中提取所有 BICS。屏幕截图显示了我在看什么,正确和错误。
你可以在顶部看到,我不在那里。我只需要撤回这些:
- BARCGB2LXXX
- BARCGB2LXXX
- 汇丰GB2LXXX
- 汇丰GB2LXXX
- RBOSGB2RTCM
- SABCIR2HXXX
编辑
也许最好量化此正则表达式旨在用于 .NET 应用程序