我正在尝试创建一个正则表达式,即使它包含破折号或空格,也可以允许/注册 IBAN 编号。
前任。 希腊 IBAN #
GR1601101250000000012300695
希腊 IBAN 正则表达式
GRd{2}d{4}d{3}ww{4}w{4}w{4}w{3}
我想将这三个 (3( 个正则表达式组合成一 (1( 个正则表达式:
GRd{2} d{4} d{3}w w{4} w{4} w{4} w{3}
(空格(
GRd{2}d{4}d{3}ww{4}w{4}w{4}w{3}
(无短划线,无破折号(
GRd{2}-d{4}-d{3}w-w{4}-w{4}-w{4}-w{3}
(破折号(
这可能吗?
任何人可以提供的任何帮助将不胜感激。 谢谢!
根据您使用的语言,您也许可以做一些更复杂的事情,但最简单的方法是使用交替:
GRd{2}( d{4} d{3}w w{4} w{4} w{4} w{3}|d{7}w{16}|-d{4}-d{3}w-w{4}-w{4}-w{4}-w{3})
例如,使用 Perl 或 C# 样式的正则表达式,您可以记住并引用匹配项:
GRd{2}(?<sep>[ -]?)d{4}k<sep>d{3}wk<sep>w{4}k<sep>w{4}k<sep>w{4}k<sep>w{3}