IBAN: Difference between revisions
Content added Content deleted
(Added Elixir) |
No edit summary |
||
Line 2,443: | Line 2,443: | ||
(bye)</lang> |
(bye)</lang> |
||
=={{header|PowerShell}}== |
|||
I have heard that Regex should not be used with IBAN codes. Regex does seem to work, however. |
|||
<lang PowerShell> |
|||
@' |
|||
"Country","Length","Example" |
|||
"Albania",28,"AL47212110090000000235698741" |
|||
"Andorra",24,"AD1200012030200359100100" |
|||
"Austria",20,"AT611904300235473201" |
|||
"Belgium",16,"BE68539007547034" |
|||
"Bosnia and Herzegovina",20,"BA391290079401028494" |
|||
"Bulgaria",22,"BG80BNBG96611020345678" |
|||
"Croatia",21,"HR1210010051863000160" |
|||
"Cyprus",28,"CY17002001280000001200527600" |
|||
"Czech Republic",24,"CZ6508000000192000145399" |
|||
"Denmark",18,"DK5000400440116243" |
|||
"Estonia",20,"EE382200221020145685" |
|||
"Faroe Islands",18,"FO1464600009692713" |
|||
"Finland",18,"FI2112345600000785" |
|||
"France",27,"FR1420041010050500013M02606" |
|||
"Georgia",22,"GE29NB0000000101904917" |
|||
"Germany",22,"DE89370400440532013000" |
|||
"Gibraltar",23,"GI75NWBK000000007099453" |
|||
"Greece",27,"GR1601101250000000012300695" |
|||
"Greenland",18,"GL8964710001000206" |
|||
"Hungary",28,"HU42117730161111101800000000" |
|||
"Iceland",26,"IS140159260076545510730339" |
|||
"Ireland",22,"IE29AIBK93115212345678" |
|||
"Italy",27,"IT60X0542811101000000123456" |
|||
"Kosovo",20,"XK051212012345678906" |
|||
"Latvia",21,"LV80BANK0000435195001" |
|||
"Liechtenstein",21,"LI21088100002324013AA" |
|||
"Lithuania",20,"LT121000011101001000" |
|||
"Luxembourg",20,"LU280019400644750000" |
|||
"Macedonia",19,"MK07300000000042425" |
|||
"Malta",31,"MT84MALT011000012345MTLCAST001S" |
|||
"Moldova",24,"MD24AG000225100013104168" |
|||
"Monaco",27,"MC5813488000010051108001292" |
|||
"Montenegro",22,"ME25505000012345678951" |
|||
"Netherlands",18,"NL91ABNA0417164300" |
|||
"Norway",15,"NO9386011117947" |
|||
"Poland",28,"PL27114020040000300201355387" |
|||
"Portugal",25,"PT50000201231234567890154" |
|||
"Romania",24,"RO49AAAA1B31007593840000" |
|||
"San Marino",27,"SM86U0322509800000000270100" |
|||
"Serbia",22,"RS35260005601001611379" |
|||
"Slovakia",24,"SK3112000000198742637541" |
|||
"Slovenia",19,"SI56191000000123438" |
|||
"Spain",24,"ES9121000418450200051332" |
|||
"Sweden",24,"SE3550000000054910000003" |
|||
"Switzerland",21,"CH9300762011623852957" |
|||
"Ukraine",29,"UA573543470006762462054925026" |
|||
"United Kingdom",22,"GB29NWBK60161331926819" |
|||
'@ -split "`r`n" | Set-Content -Path .\IBAN.csv -Force |
|||
$ibans = foreach ($iban in Import-Csv -Path .\IBAN.csv) |
|||
{ |
|||
$iban | Select-Object -Property Country, |
|||
@{Name='Code' ; Expression={$iban.Example.Substring(0,2)}}, |
|||
@{Name='Length'; Expression={[int]$iban.Length}}, |
|||
Example |
|||
} |
|||
$ibans |
|||
</lang> |
|||
{{Out}} |
|||
<pre> |
|||
Country Code Length Example |
|||
------- ---- ------ ------- |
|||
Albania AL 28 AL47212110090000000235698741 |
|||
Andorra AD 24 AD1200012030200359100100 |
|||
Austria AT 20 AT611904300235473201 |
|||
Belgium BE 16 BE68539007547034 |
|||
Bosnia and Herzegovina BA 20 BA391290079401028494 |
|||
Bulgaria BG 22 BG80BNBG96611020345678 |
|||
Croatia HR 21 HR1210010051863000160 |
|||
Cyprus CY 28 CY17002001280000001200527600 |
|||
Czech Republic CZ 24 CZ6508000000192000145399 |
|||
Denmark DK 18 DK5000400440116243 |
|||
Estonia EE 20 EE382200221020145685 |
|||
Faroe Islands FO 18 FO1464600009692713 |
|||
Finland FI 18 FI2112345600000785 |
|||
France FR 27 FR1420041010050500013M02606 |
|||
Georgia GE 22 GE29NB0000000101904917 |
|||
Germany DE 22 DE89370400440532013000 |
|||
Gibraltar GI 23 GI75NWBK000000007099453 |
|||
Greece GR 27 GR1601101250000000012300695 |
|||
Greenland GL 18 GL8964710001000206 |
|||
Hungary HU 28 HU42117730161111101800000000 |
|||
Iceland IS 26 IS140159260076545510730339 |
|||
Ireland IE 22 IE29AIBK93115212345678 |
|||
Italy IT 27 IT60X0542811101000000123456 |
|||
Kosovo XK 20 XK051212012345678906 |
|||
Latvia LV 21 LV80BANK0000435195001 |
|||
Liechtenstein LI 21 LI21088100002324013AA |
|||
Lithuania LT 20 LT121000011101001000 |
|||
Luxembourg LU 20 LU280019400644750000 |
|||
Macedonia MK 19 MK07300000000042425 |
|||
Malta MT 31 MT84MALT011000012345MTLCAST001S |
|||
Moldova MD 24 MD24AG000225100013104168 |
|||
Monaco MC 27 MC5813488000010051108001292 |
|||
Montenegro ME 22 ME25505000012345678951 |
|||
Netherlands NL 18 NL91ABNA0417164300 |
|||
Norway NO 15 NO9386011117947 |
|||
Poland PL 28 PL27114020040000300201355387 |
|||
Portugal PT 25 PT50000201231234567890154 |
|||
Romania RO 24 RO49AAAA1B31007593840000 |
|||
San Marino SM 27 SM86U0322509800000000270100 |
|||
Serbia RS 22 RS35260005601001611379 |
|||
Slovakia SK 24 SK3112000000198742637541 |
|||
Slovenia SI 19 SI56191000000123438 |
|||
Spain ES 24 ES9121000418450200051332 |
|||
Sweden SE 24 SE3550000000054910000003 |
|||
Switzerland CH 21 CH9300762011623852957 |
|||
Ukraine UA 29 UA573543470006762462054925026 |
|||
United Kingdom GB 22 GB29NWBK60161331926819 |
|||
</pre> |
|||
<lang PowerShell> |
|||
$regex = [regex]'[a-zA-Z]{2}[0-9]{2}[a-zA-Z0-9]{6}[0-9]{5}([a-zA-Z0-9]?){0,16}' |
|||
foreach ($iban in $ibans) |
|||
{ |
|||
[PSCustomObject]@{ |
|||
Country = $iban.Country |
|||
Example = $iban.Example |
|||
IsValid = $regex.IsMatch($iban.Example) |
|||
} |
|||
} |
|||
</lang> |
|||
{{Out}} |
|||
<pre> |
|||
Country Example IsValid |
|||
------- ------- ------- |
|||
Albania AL47212110090000000235698741 True |
|||
Andorra AD1200012030200359100100 True |
|||
Austria AT611904300235473201 True |
|||
Belgium BE68539007547034 True |
|||
Bosnia and Herzegovina BA391290079401028494 True |
|||
Bulgaria BG80BNBG96611020345678 True |
|||
Croatia HR1210010051863000160 True |
|||
Cyprus CY17002001280000001200527600 True |
|||
Czech Republic CZ6508000000192000145399 True |
|||
Denmark DK5000400440116243 True |
|||
Estonia EE382200221020145685 True |
|||
Faroe Islands FO1464600009692713 True |
|||
Finland FI2112345600000785 True |
|||
France FR1420041010050500013M02606 True |
|||
Georgia GE29NB0000000101904917 True |
|||
Germany DE89370400440532013000 True |
|||
Gibraltar GI75NWBK000000007099453 True |
|||
Greece GR1601101250000000012300695 True |
|||
Greenland GL8964710001000206 True |
|||
Hungary HU42117730161111101800000000 True |
|||
Iceland IS140159260076545510730339 True |
|||
Ireland IE29AIBK93115212345678 True |
|||
Italy IT60X0542811101000000123456 True |
|||
Kosovo XK051212012345678906 True |
|||
Latvia LV80BANK0000435195001 True |
|||
Liechtenstein LI21088100002324013AA True |
|||
Lithuania LT121000011101001000 True |
|||
Luxembourg LU280019400644750000 True |
|||
Macedonia MK07300000000042425 True |
|||
Malta MT84MALT011000012345MTLCAST001S True |
|||
Moldova MD24AG000225100013104168 True |
|||
Monaco MC5813488000010051108001292 True |
|||
Montenegro ME25505000012345678951 True |
|||
Netherlands NL91ABNA0417164300 True |
|||
Norway NO9386011117947 True |
|||
Poland PL27114020040000300201355387 True |
|||
Portugal PT50000201231234567890154 True |
|||
Romania RO49AAAA1B31007593840000 True |
|||
San Marino SM86U0322509800000000270100 True |
|||
Serbia RS35260005601001611379 True |
|||
Slovakia SK3112000000198742637541 True |
|||
Slovenia SI56191000000123438 True |
|||
Spain ES9121000418450200051332 True |
|||
Sweden SE3550000000054910000003 True |
|||
Switzerland CH9300762011623852957 True |
|||
Ukraine UA573543470006762462054925026 True |
|||
United Kingdom GB29NWBK60161331926819 True |
|||
</pre> |
|||
=={{header|PureBasic}}== |
=={{header|PureBasic}}== |