Analizator Podziałów Linii
Analizuj zakończenia linii w tekście lub plikach. Wykrywaj typy podziałów linii CRLF, LF i CR, zliczaj wystąpienia i przeglądaj statystyki linii, w tym całkowitą liczbę linii, najdłuższą, najkrótszą i średnią długość linii.
Wejście
Wyjście
Instrukcja
Czym są zakończenia linii?
Zakończenie linii (zwane również newline'em lub sekwencją end-of-line) to specjalny znak lub para znaków, która oznacza, gdzie kończy się jedna linia tekstu i zaczyna się następna. Istnieją trzy odrębne konwencje w różnych systemach operacyjnych: LF (\n, pojedynczy znak linefeed), CRLF (\r\n, powrót karetki następowany linefeed'em) i CR (\r, samodzielny powrót karetki).
Różnica pochodzi z wczesnych czasów informatyki. Maszyny do pisania wymagały dwóch fizycznych kroków, aby rozpocząć nową linię — przesunięcia karetki z powrotem na początek (CR) i przesunięcia papieru o jedną linię (LF). Systemy Unix przyjęły sam LF w latach 70., podczas gdy MS-DOS i późniejszy Windows zachowały pełną sekwencję CR+LF. Klasyczny Mac OS (przed OS X) używał samego CR, chociaż nowoczesny macOS podąża za konwencją Unix LF.
Mieszane zakończenia linii są powszechne w plikach, które były edytowane na wielu platformach, przesyłane między systemami lub łączone z różnych źródeł. Mogą powodować subtelne błędy w skryptach, narzędziach do budowania i systemach kontroli wersji.
Opis narzędzia
To narzędzie analizuje tekst lub plik i wykrywa, które typy zakończeń linii są obecne. Liczy każdy typ osobno — CRLF, LF i CR — i raportuje ogólny styl zakończenia linii (w tym czy plik ma mieszane zakończenia). Zapewnia również podstawowe statystyki linii: całkowitą liczbę linii, najdłuższą linię, najkrótszą linię i średnią długość linii.
Funkcje
- Wykrywa wszystkie trzy typy zakończeń linii: CRLF (Windows), LF (Unix/macOS) i CR (klasyczny Mac)
- Identyfikuje mieszane zakończenia linii i oznacza dominujący styl
- Akceptuje zarówno wklejony tekst za pośrednictwem edytora kodu, jak i przesłane pliki w dowolnym formacie tekstowym
- Liczy każdy typ zakończenia linii niezależnie bez podwójnego liczenia
- Raportuje całkowitą liczbę linii, najdłuższą linię, najkrótszą linię i średnią długość linii
Przypadki użycia
- Debugowanie błędów kompilacji na wielu platformach — skrypty lub pliki konfiguracyjne z nieoczekiwanymi zakończeniami CRLF często się psują na serwerach Unix; użyj tego narzędzia, aby potwierdzić zakończenia linii przed wdrożeniem
- Przygotowanie do przeglądu kodu — sprawdź, czy plik przesłany z maszyny Windows używa oczekiwanej konwencji LF projektu przed zatwierdzeniem
- Audyt plików tekstowych — szybko sprawdź pliki dziennika, CSV-e lub eksporty danych, aby zrozumieć ich strukturę przed ich programistycznym parsowaniem
Jak to działa
Sekwencje CRLF (\r\n) są najpierw wykrywane i liczone za pomocą dopasowania regex. Dopasowane pary są następnie usuwane z ciągu znaków przed osobnym liczeniem samodzielnych znaków LF (\n) i CR (\r). Zapobiega to liczeniu pojedynczego \r\n zarówno jako CR, jak i LF. Statystyki linii są wyprowadzane przez podzielenie oryginalnego tekstu na wszystkie trzy wzorce zakończeń linii.