Διαδρομές
/
C#
C#
/
Ασκήσεις
/
Πεντακάθαρος
Πεντακάθαρος

Πεντακάθαρος

Άσκηση εκμάθησης

Εισαγωγή

Χαρακτήρες

Ο τύπος char της C# είναι μια ποσότητα 16 bit που αναπαριστά τα μικρότερα διευθυνσιοδοτήσιμα συστατικά του κειμένου. Πολλά char μπορούν να σχηματίσουν μια συμβολοσειρά όπως η "word" ή τα char μπορούν να υποστούν επεξεργασία ανεξάρτητα. Τα literal τους έχουν μονά εισαγωγικά, π.χ. 'A'.

Τα char της C# υποστηρίζουν κωδικοποίηση UTF-16 Unicode, οπότε εκτός από το λατινικό σύνολο χαρακτήρων μπορούν να αναπαρασταθούν σχεδόν όλα τα συστήματα γραφής που χρησιμοποιούνται στον κόσμο, π.χ. το ελληνικό γράμμα 'β'.

Υπάρχουν πολλές ενσωματωμένες μέθοδοι βιβλιοθήκης για την εξέταση και τον χειρισμό των char. Αυτές μπορούν να βρεθούν ως στατικές μέθοδοι της κλάσης System.Char.

Δομητής συμβολοσειρών

Τα char χρησιμοποιούνται μερικές φορές σε συνδυασμό με ένα αντικείμενο StringBuilder. Αυτό το αντικείμενο έχει μεθόδους που επιτρέπουν να κατασκευαστεί μια συμβολοσειρά χαρακτήρα προς χαρακτήρα και να χειριστεί. Στο τέλος της διαδικασίας μπορείς να καλέσεις τη ToString πάνω του για να εξαγάγεις μια πλήρη συμβολοσειρά.

Οδηγίες

Σε αυτή την άσκηση, θα υλοποιήσεις ένα μέρος από ένα σύνολο βοηθητικών ρουτινών που βοηθούν έναν προγραμματιστή να καθαρίζει ονόματα αναγνωριστικών. Στις 5 εργασίες θα χτίσεις σταδιακά τη ρουτίνα Clean. Ένα έγκυρο αναγνωριστικό αποτελείται από μηδέν ή περισσότερα γράμματα και κάτω παύλες. Σε κάθε περίπτωση, η συμβολοσειρά εισόδου δεν είναι ποτέ null. Αν δοθεί μια κενή συμβολοσειρά στη συνάρτηση Clean, θα πρέπει να επιστραφεί μια κενή συμβολοσειρά. Σημείωσε ότι αυτός που καλεί θα πρέπει να αποφεύγει να καλεί τη ρουτίνα Clean με ένα κενό αναγνωριστικό, αφού τέτοια αναγνωριστικά δεν έχουν κανένα αποτέλεσμα.

1. Αντικατέστησε τυχόν κενά με κάτω παύλες

Υλοποίησε τη (static) μέθοδο Identifier.Clean() ώστε να αντικαθιστά τυχόν κενά με κάτω παύλες. Αυτό ισχύει και για τα κενά στην αρχή και στο τέλος.

Identifier.Clean("my   Id");
// => "my___Id"

2. Αντικατέστησε τους χαρακτήρες ελέγχου με τη συμβολοσειρά "CTRL" σε κεφαλαία

Τροποποίησε τη (static) μέθοδο Identifier.Clean() ώστε να αντικαθιστά τους χαρακτήρες ελέγχου με τη συμβολοσειρά "CTRL" σε κεφαλαία γράμματα.

Identifier.Clean("my\0Id");
// => "myCTRLId",

3. Μετέτρεψε το kebab-case σε camelCase

Τροποποίησε τη (static) μέθοδο Identifier.Clean() ώστε να μετατρέπει το kebab-case σε camelCase.

Identifier.Clean("à-ḃç");
// => "àḂç"

4. Παράλειψε όσους χαρακτήρες δεν είναι γράμματα

Τροποποίησε τη (static) μέθοδο Identifier.Clean() ώστε να παραλείπει όσους χαρακτήρες δεν είναι γράμματα.

Identifier.Clean("1😀2😀3😀");
// => ""

5. Παράλειψε τα ελληνικά πεζά γράμματα

Τροποποίησε τη (static) μέθοδο Identifier.Clean() ώστε να παραλείπει οποιαδήποτε ελληνικά γράμματα στο εύρος από το 'α' έως το 'ω'.

Identifier.Clean("MyΟβιεγτFinder");
// => "MyΟFinder"
Επεξεργασία μέσω GitHub Ο σύνδεσμος ανοίγει σε νέο παράθυρο ή καρτέλα
C# Exercism

Έτοιμος να ξεκινήσεις την άσκηση Πεντακάθαρος;

Γράψου στο Exercism για να μάθεις και να κατακτήσεις C# με 62 έννοιες178 ασκήσεις και πραγματική καθοδήγηση από ανθρώπους, όλα δωρεάν.