tafkeet method
Convert string to words if it contains a valid number Returns the original string if it's not a valid number
Automatically converts Arabic-Indic numerals (٠١٢٣...) to Western numerals before conversion
lang The desired language (if not specified, uses default language)
currency The currency (if not specified, uses default currency or no currency)
Example:
'123'.tafkeet(lang: Lang.ar); // Works with English numerals
'١٢٣'.tafkeet(lang: Lang.ar); // Works with Arabic numerals
Implementation
String tafkeet(
{Language? lang,
Currency? currency,
String? currencyCode,
String? prefix,
String? suffix}) {
// Convert Arabic numerals to English first
final normalizedString = NumberUtils.replaceArabicNumber(this);
final number = double.tryParse(normalizedString);
if (number == null) {
return this; // Return original string if not a valid number
}
return Tafkeet.convert(number,
lang: lang,
currency: currency,
currencyCode: currencyCode,
prefix: prefix,
suffix: suffix);
}