isValidBIC function

bool isValidBIC(
  1. String? bic
)

Validate BIC/SWIFT

// returns `true`
ibantools.isValidBIC("ABNANL2A");

// returns `true`
ibantools.isValidBIC("NEDSZAJJXXX");

// returns `false`
ibantools.isValidBIC("ABN4NL2A");

// returns `false`
ibantools.isValidBIC("ABNA NL 2A");

Implementation

bool isValidBIC(String? bic) {
  if (bic == null) {
    return false;
  }
  final RegExp reg = RegExp(r'^[a-zA-Z]{6}[a-zA-Z0-9]{2}([a-zA-Z0-9]{3})?$');
  final CountrySpec? spec = countrySpecs[bic.toUpperCase().substring(4, 6)];

  return reg.hasMatch(bic) && spec != null;
}