Μια string στη C# είναι ένα αντικείμενο που αναπαριστά αμετάβλητο κείμενο ως ακολουθία χαρακτήρων Unicode (γράμματα, ψηφία, σημεία στίξης κ.λπ.). Με τα διπλά εισαγωγικά ορίζεις ένα στιγμιότυπο string:
string fruit = "Apple";
Τις συμβολοσειρές τις χειρίζεσαι καλώντας τις ενσωματωμένες μεθόδους τους. Για παράδειγμα, για να αφαιρέσεις τα κενά από μια συμβολοσειρά, μπορείς να χρησιμοποιήσεις τη μέθοδο Trim έτσι:
string name = " Jane "
name.Trim()
// => "Jane"
Μόλις δημιουργηθεί μια συμβολοσειρά, η τιμή της δεν μπορεί να αλλάξει ποτέ. Όποια μέθοδος φαίνεται να τροποποιεί μια συμβολοσειρά, στην πραγματικότητα επιστρέφει μια νέα συμβολοσειρά.
Πολλές συμβολοσειρές μπορούν να συνενωθούν (να προστεθούν) μεταξύ τους. Ο πιο απλός τρόπος να το κάνεις αυτό είναι να χρησιμοποιήσεις τον τελεστή +.
string name = "Jane";
"Hello " + name + "!";
// => "Hello Jane!"
Για οποιαδήποτε μορφοποίηση συμβολοσειράς πιο σύνθετη από την απλή συνένωση, προτιμάται η παρεμβολή συμβολοσειρών. Για να χρησιμοποιήσεις παρεμβολή σε μια συμβολοσειρά, βάλε μπροστά της το σύμβολο του δολαρίου ($). Έπειτα μπορείς να χρησιμοποιήσεις άγκιστρα ({}) για να προσπελάσεις οποιεσδήποτε μεταβλητές μέσα στη συμβολοσειρά σου.
string name = "Jane";
$"Hello {name}!";
// => "Hello Jane!"
Σε αυτήν την άσκηση θα επεξεργάζεσαι γραμμές καταγραφής.
Κάθε γραμμή καταγραφής είναι μια συμβολοσειρά με την εξής μορφή: "[<LEVEL>]: <MESSAGE>".
Υπάρχουν τρία διαφορετικά επίπεδα καταγραφής:
INFOWARNINGERRORΈχεις τρεις εργασίες, καθεμία από τις οποίες θα παίρνει μια γραμμή καταγραφής και θα σου ζητάει να κάνεις κάτι με αυτήν.
Υλοποίησε τη (static) μέθοδο LogLine.Message() ώστε να επιστρέφει το μήνυμα μιας γραμμής καταγραφής:
LogLine.Message("[ERROR]: Invalid operation")
// => "Invalid operation"
Οποιοδήποτε κενό διάστημα στην αρχή ή στο τέλος πρέπει να αφαιρείται:
LogLine.Message("[WARNING]: Disk almost full\r\n")
// => "Disk almost full"
Υλοποίησε τη (static) μέθοδο LogLine.LogLevel() ώστε να επιστρέφει το επίπεδο καταγραφής μιας γραμμής καταγραφής, το οποίο θα πρέπει να επιστρέφεται με πεζά γράμματα:
LogLine.LogLevel("[ERROR]: Invalid operation")
// => "error"
Υλοποίησε τη (static) μέθοδο LogLine.Reformat() που αναδιαμορφώνει τη γραμμή καταγραφής, βάζοντας πρώτα το μήνυμα και μετά το επίπεδο καταγραφής σε παρενθέσεις:
LogLine.Reformat("[INFO]: Operation completed")
// => "Operation completed (info)"
Γράψου στο Exercism για να μάθεις και να κατακτήσεις C# με 62 έννοιες178 ασκήσεις και πραγματική καθοδήγηση από ανθρώπους, όλα δωρεάν.