Warning: session_start(): open(/var/lib/php/sessions/sess_qgr80d286hkui427obmsh32869, O_RDWR) failed: No space left on device (28) in /var/www/tb-usercake/models/config.php on line 51
Warning: session_start(): Failed to read session data: files (path: /var/lib/php/sessions) in /var/www/tb-usercake/models/config.php on line 51
// see https://howtodoinjava.com/java/regex/java-regex-validate-international-phone-numbers/
sclass InternationalPhoneValidator {
S rawInput;
S filtered;
CountryDialCode dialCode;
S countryPart, localPart;
bool valid;
*() {}
*(S *rawInput) {}
// needs rawInput
run {
filtered = dropSpecialChars(rawInput);
splitLocal();
}
S dropSpecialChars(S s) {
ret replaceAll(s, "[\\s\\(\\)\\-]", "");
}
void splitLocal {
S countryPart = longestPrefixInTreeSet(filtered, countryDialCodes_rawNumbersTreeMultiMap());
if (countryPart == null) ret;
CountryDialCode dialCode = countryDialCodes_rawNumbersTreeMultiMap().get(countryPart);
localPart = dropPrefix(countryPart, filtered);
valid = l(filtered) >= 7 && l(filtered) <= 15;
}
}