Έχεις μπει στη LinkLine, μια κορυφαία εταιρεία επικοινωνιών που εργάζεται για να διασφαλίζει αξιόπιστες συνδέσεις για όλους. Η ομάδα αντιμετωπίζει μια μεγάλη πρόκληση: οι χρήστες υποβάλλουν αριθμούς τηλεφώνου σε κάθε λογής μορφή, με παύλες, κενά, τελείες, παρενθέσεις και ακόμη και προθέματα. Κάποιοι αριθμοί είναι έγκυροι, ενώ άλλοι είναι αδύνατο να χρησιμοποιηθούν.
Η αποστολή σου είναι να μετατρέψεις αυτό το χάος σε τάξη. Θα καθαρίζεις τους έγκυρους αριθμούς και θα τους μορφοποιείς κατάλληλα για χρήση στο σύστημα. Παράλληλα, θα εντοπίζεις και θα φιλτράρεις όποιες μη έγκυρες καταχωρήσεις.
Η επιτυχία των λειτουργιών της LinkLine εξαρτάται από την ικανότητά σου να ξεχωρίζεις τα χρήσιμα από τα άχρηστα. Είσαι έτοιμος να αναλάβεις την πρόκληση και να κρατήσεις τις συνδέσεις να λειτουργούν ομαλά;
Καθάρισε τους αριθμούς τηλεφώνου, ώστε να μπορούν να τους σταλούν μηνύματα SMS.
Το North American Numbering Plan (NANP) είναι ένα σύστημα αρίθμησης τηλεφώνων που χρησιμοποιείται από πολλές χώρες της Βόρειας Αμερικής, όπως οι Ηνωμένες Πολιτείες, ο Καναδάς ή οι Βερμούδες.
Όλες οι χώρες του NANP μοιράζονται τον ίδιο διεθνή κωδικό χώρας: 1.
Οι αριθμοί NANP είναι δεκαψήφιοι αριθμοί που αποτελούνται από έναν τριψήφιο κωδικό περιοχής του σχεδίου αρίθμησης, γνωστό συνήθως ως κωδικός περιοχής, και ακολουθεί ένας επταψήφιος τοπικός αριθμός. Τα τρία πρώτα ψηφία του τοπικού αριθμού αντιπροσωπεύουν τον κωδικό τηλεφωνικού κέντρου, και ακολουθεί ο μοναδικός τετραψήφιος αριθμός, που είναι ο αριθμός συνδρομητή.
Η μορφή συνήθως αναπαρίσταται ως
NXX NXX-XXXX
όπου το N είναι οποιοδήποτε ψηφίο από το 2 έως το 9 και το X είναι οποιοδήποτε ψηφίο από το 0 έως το 9.
Μερικές φορές έχουν επίσης ως πρόθεμα τον κωδικό χώρας (που αναπαρίσταται ως 1 ή +1).
Η αποστολή σου είναι να καθαρίσεις διαφορετικά μορφοποιημένους αριθμούς τηλεφώνου, αφαιρώντας τη στίξη και τον κωδικό χώρας, αν υπάρχει.
Για παράδειγμα, οι είσοδοι
+1 (613)-995-0253613-995-02531 613 995 0253613.995.0253θα πρέπει όλες να παράγουν την έξοδο
6139950253
Σημείωση: Επειδή αυτή η άσκηση ασχολείται μόνο με αριθμούς τηλεφώνου που χρησιμοποιούνται σε χώρες του NANP, μόνο το 1 θεωρείται έγκυρος κωδικός χώρας.
Γράψου στο Exercism για να μάθεις και να κατακτήσεις Common Lisp με 27 έννοιες92 ασκήσεις και πραγματική καθοδήγηση από ανθρώπους, όλα δωρεάν.