splitPhoneNumber
Versionshinweise | 24.4 |
---|
Code
IPhoneNumber splitPhoneNumber(String String)
Beschreibung
Teilt und bereinigt den übergebenen String in eine valide Telefonnummer.
Es werden nur Zahlen in die Telefonnummer übernommen.
Eine formattierte Eingabe im übergebenen String resultiert in besseren Ergebnissen, auch wenn einfach nur Leerzeichen zwischen den Zahlen eingefügt wurden.
Parameter:
String - Der String, der die Telefonnummer beinhaltet.
Rückgabe
Die IPhoneNumber, die die erkannten Teile der Telefonnummer enthält.
Beispiele
@Test
void testSplitPhoneNumber()
{
String no1 = "Telefon: +49 (0641) 4 00 00 - 12 34 ";
Assertions.assertEquals("+49 (641) 40000 - 1234", getPhoneNumber(no1), "Test1");
String no2 = "Telefon: +49 (0641) 1 00 00 - 65 66 a! b!";
Assertions.assertEquals("+49 (641) 10000 - 6566", getPhoneNumber(no2), "Test2");
String no3 = "Test +49 0641 4 6 5 8 9 - 6 5 dfgh";
Assertions.assertEquals("+49 (641) 46589 - 65", getPhoneNumber(no3), "Test3");
String no4 = "Test 0641 46 58 9 65";
Assertions.assertEquals("(0641) 46589 - 65", getPhoneNumber(no4), "Test4");
String no5 = "46 58 9 65";
Assertions.assertEquals("+46 (58) 9 - 65", getPhoneNumber(no5), "Test5");
String no6 = "4658965";
Assertions.assertEquals("4658965", getPhoneNumber(no6), "Test6");
String no7 = "a4b6c5d8e9f6g5h"; // not recognized
Assertions.assertEquals("", getPhoneNumber(no7), "Test7");
String no8 = "a +49641c5d8e9f6g5h";
Assertions.assertEquals("+49641", getPhoneNumber(no8), "Test8");
String no9 = "a -666 h";
Assertions.assertEquals("666", getPhoneNumber(no9), "Test9");
String no10 = "a 1111-666 h";
Assertions.assertEquals("(1111) 666", getPhoneNumber(no10), "Test10");
}
private String getPhoneNumber(String potentialNumber)
{
IPhoneNumber myNumber = LogicScriptUtils.splitPhoneNumber(potentialNumber);
String number = "";
number += ScriptUtils.isEmpty(LogicScriptUtils.getPhoneCountry(myNumber)) ? "" : LogicScriptUtils.getPhoneCountry(myNumber);
number += ScriptUtils.isEmpty(LogicScriptUtils.getPhoneCity(myNumber)) ? "" : " (" + LogicScriptUtils.getPhoneCity(myNumber) + ")";
number += ScriptUtils.isEmpty(LogicScriptUtils.getPhoneBase(myNumber)) ? "" : " " + LogicScriptUtils.getPhoneBase(myNumber);
number += ScriptUtils.isEmpty(LogicScriptUtils.getPhoneExtension(myNumber)) ? "" : " - " + LogicScriptUtils.getPhoneExtension(myNumber);
return number.trim();
}