sanitizeSignerName static method
Remove sufixos de CPF/CNPJ que alguns emissores anexam ao nome.
Implementation
static String? sanitizeSignerName(String? raw) {
if (raw == null) return null;
var value = raw.trim();
if (value.isEmpty) return null;
final tailWithSep =
RegExp(r'^(.+?)\s*[:\-]\s*([\d.\-/]+)$').firstMatch(value);
if (tailWithSep != null) {
final digits = tailWithSep.group(2)!.replaceAll(RegExp(r'\D'), '');
if (digits.length == 11 || digits.length == 14) {
value = tailWithSep.group(1)!.trim();
}
}
final tailToken = RegExp(r'^(.+?)\s+([\d.\-/]{11,20})$').firstMatch(value);
if (tailToken != null) {
final digits = tailToken.group(2)!.replaceAll(RegExp(r'\D'), '');
if (digits.length == 11 || digits.length == 14) {
value = tailToken.group(1)!.trim();
}
}
return value.isEmpty ? null : value;
}