Αναλυτής Αλλαγών Γραμμής
Αναλύστε τις αλλαγές γραμμής σε κείμενο ή αρχεία. Ανιχνεύστε τύπους αλλαγών γραμμής CRLF, LF και CR, μετρήστε τις εμφανίσεις και προβάλετε στατιστικά γραμμών συμπεριλαμβανομένων συνολικών γραμμών, μεγαλύτερης, μικρότερης και μέσης μήκους γραμμής.
Είσοδος
Έξοδος
Readme
Τι είναι τα line endings;
Ένα line ending (γνωστό και ως newline ή end-of-line sequence) είναι ένας ειδικός χαρακτήρας ή ζεύγος χαρακτήρων που σηματοδοτεί το σημείο όπου τελειώνει μια γραμμή κειμένου και αρχίζει η επόμενη. Τρεις διακριτές συμβάσεις υπάρχουν σε διαφορετικά λειτουργικά συστήματα: LF (\n, ένας μόνο χαρακτήρας linefeed), CRLF (\r\n, ένα carriage return ακολουθούμενο από ένα linefeed), και CR (\r, ένα αυτόνομο carriage return).
Η διαφορά προέρχεται από τα πρώιμα υπολογιστικά συστήματα. Οι γραφομηχανές απαιτούσαν δύο φυσικά βήματα για να ξεκινήσουν μια νέα γραμμή — μετακίνηση του καρότσιου στην αρχή (CR) και προώθηση του χαρτιού κατά μία γραμμή (LF). Τα συστήματα Unix υιοθέτησαν μόνο LF στη δεκαετία του 1970, ενώ το MS-DOS και το Windows που ακολούθησε διατήρησαν την πλήρη ακολουθία CR+LF. Το κλασικό Mac OS (πριν από το OS X) χρησιμοποιούσε μόνο CR, αν και το σύγχρονο macOS ακολουθεί τη σύμβαση Unix LF.
Τα μικτά line endings είναι συνηθισμένα σε αρχεία που έχουν επεξεργαστεί σε πολλές πλατφόρμες, μεταφερθεί μεταξύ συστημάτων ή συνενώθεί από διαφορετικές πηγές. Μπορούν να προκαλέσουν λεπτά σφάλματα σε scripts, εργαλεία build και συστήματα ελέγχου έκδοσης.
Περιγραφή εργαλείου
Αυτό το εργαλείο αναλύει κείμενο ή ένα αρχείο και ανιχνεύει ποιοι τύποι line ending είναι παρόντες. Μετρά κάθε τύπο ξεχωριστά — CRLF, LF και CR — και αναφέρει το συνολικό στυλ line ending (συμπεριλαμβανομένου του αν το αρχείο έχει μικτά endings). Παρέχει επίσης βασικές στατιστικές γραμμών: συνολικό πλήθος γραμμών, μεγαλύτερη γραμμή, μικρότερη γραμμή και μέσο μήκος γραμμής.
Χαρακτηριστικά
- Ανιχνεύει και τους τρεις τύπους line ending: CRLF (Windows), LF (Unix/macOS) και CR (κλασικό Mac)
- Αναγνωρίζει μικτά line endings και επισημαίνει το κυρίαρχο στυλ
- Δέχεται τόσο επικολλημένο κείμενο μέσω ενός επεξεργαστή κώδικα όσο και μεταφορτωμένα αρχεία οποιασδήποτε μορφής κειμένου
- Μετρά κάθε τύπο line ending ανεξάρτητα χωρίς διπλή μέτρηση
- Αναφέρει συνολικές γραμμές, μεγαλύτερη γραμμή, μικρότερη γραμμή και μέσο μήκος γραμμής
Περιπτώσεις χρήσης
- Αποσφαλμάτωση αποτυχιών build σε πολλές πλατφόρμες — scripts ή αρχεία ρυθμίσεων με απροσδόκητα CRLF endings συχνά σπάνε σε Unix servers· χρησιμοποιήστε αυτό το εργαλείο για να επιβεβαιώσετε τα line endings πριν την ανάπτυξη
- Προετοιμασία ελέγχου κώδικα — επαληθεύστε ότι ένα αρχείο που συνεισφέρθηκε από ένα Windows μηχάνημα χρησιμοποιεί τη σύμβαση LF που αναμένει το έργο πριν από την υποβολή
- Ελεγχος αρχείων κειμένου — επιθεωρήστε γρήγορα αρχεία καταγραφής, CSVs ή εξαγωγές δεδομένων για να κατανοήσετε τη δομή τους πριν τα αναλύσετε προγραμματιστικά
Πώς λειτουργεί
Οι ακολουθίες CRLF (\r\n) ανιχνεύονται και μετρώνται πρώτα χρησιμοποιώντας ένα regex match. Τα ταιριάσματα αφαιρούνται στη συνέχεια από το string πριν μετρηθούν ξεχωριστά τα αυτόνομα LF (\n) και CR (\r) χαρακτήρες. Αυτό αποτρέπει ένα μόνο \r\n από το να μετρηθεί ως CR και LF. Οι στατιστικές γραμμών προέρχονται από τη διαίρεση του αρχικού κειμένου σε όλα τα τρία μοτίβα line ending.