isIban property
bool
isIban
Checks whether the String
is a valid IBAN.
Example
String iban = 'GR1601101250000000012300695';
bool isIban = iban.isIban; // returns true;
String iban = 'GR01250000000012300695';
bool isIban = iban.isIban; // returns false;
Implementation
bool get isIban {
if (this.isBlank) {
return false;
}
if (this!.length <= 2) {
return false;
}
final countryCode = this.first(n: 2);
if (!StringHelpers.ibanLen.containsKey(countryCode)) {
return false;
}
if (StringHelpers.ibanLen[countryCode] != this!.length) {
return false;
}
var regex = RegExp(
r'(^[a-zA-Z]{2}(?:0[2-9]|[1-8][0-9]|9[0-8])[a-zA-Z0-9]{4}[0-9]{6}[a-zA-Z0-9]{0,20}$)');
return regex.hasMatch(this!);
}