Usuwanie polskich znaków z tekstu i nazw plików

Wklej tekst, a ogonki i kreski znikną od razu. Podstawowa zamiana zostawia kształt liter, transliteracja fonetyczna oddaje brzmienie.

Wszystko liczy się w Twojej przeglądarce - wklejony tekst nie opuszcza tego urządzenia.

Tekst z polskimi znakami
Sposób zamiany

Podstawowa zamiana zostawia kształt litery: ą → a, ł → l, ż → z. Reszta tekstu, łącznie z wielkością liter i interpunkcją, pozostaje bez zmian.

Wynik
0Zmienione znaki
0Znaki na wejściu
0Znaki na wyjściu
0Znaki spoza ASCII
Tabela zamian
ZnakPodstawowaFonetyczna

Wielkie litery zamieniamy analogicznie: Ł → L. W trybie fonetycznym wielka litera daje zapis z wielką pierwszą literą, czyli Ą → On, a w wyrazie pisanym samymi wersalikami - ON.

Jak używać

  1. Wpisz tekst w górnym polu tekstowym albo wklej go ze schowka. Wynik wyświetla się natychmiast w polu poniżej, bez klikania przycisku.
  2. Zostaw tryb „Podstawowa zamiana”, jeśli chcesz tylko pozbyć się ogonków i kresek: ą zamienia się w a, ł w l, a reszta tekstu zostaje nietknięta.
  3. Przełącz na „Transliterację fonetyczną”, gdy zależy Ci na brzmieniu liter. Wtedy ą daje on, ś daje sz, a ó daje u.
  4. Zaznacz „Zamień na małe litery”, jeśli przygotowujesz tekst na adres URL albo na nazwę pliku.
  5. Zaznacz „Usuń też znaki specjalne”, żeby zostawić wyłącznie litery i cyfry rozdzielone pojedynczą spacją. Przydaje się przy imporcie do arkuszy Excela i do systemów, które nie znoszą interpunkcji.
  6. Kliknij „Kopiuj wynik”, żeby skopiować gotowy tekst do schowka. Przycisk „Zamień miejscami” przenosi wynik do pola wejściowego, gdy chcesz pracować dalej na przetworzonym tekście.

Wskazówki

  • Licznik zmienionych znaków porównuje tekst wejściowy z wynikiem znak po znaku, więc przy włączonym usuwaniu znaków specjalnych pokaże też skasowaną interpunkcję.
  • Kafelek „Znaki spoza ASCII” mówi, ile znaków nadal wykracza poza podstawowy alfabet łaciński. Jeśli po zamianie nie jest zerowy, w tekście są znaki innych alfabetów, emoji albo typograficzne cudzysłowy i półpauzy.
  • Litery ł i Ł wymagają osobnej reguły. Normalizacja Unicode rozkłada ą na a plus ogonek, ale ł jest w Unicode osobnym znakiem, którego nie da się rozłożyć.
  • Transliteracja fonetyczna jest konwencją uproszczoną. Litera ę na końcu wyrazu wymawia się jak e, ale narzędzie i tak zamieni ją na en, bo poprawianie takich przypadków wymagałoby analizy gramatycznej.
  • Zamiana działa w jedną stronę, bo po usunięciu diakrytyków „laska”, „łaska” i „łąska” dają ten sam wynik i oryginału nie da się odtworzyć.

Zamieniasz tytuł artykułu na adres strony? Lepszy będzie generator slug URL, który przy okazji zamienia spacje na myślniki i skraca adres. Przed wysyłką SMS-a skorzystaj z licznika znaków.

Kiedy przydaje się tekst bez polskich znaków

Alfabet polski liczy 32 litery, a dziewięć z nich (ą ć ę ł ń ó ś ź ż) zapisujemy z ogonkiem, kreską albo kropką. Te dziewięć znaków psuje się wszędzie tam, gdzie dane przechodzą przez system nieprzygotowany na kodowanie UTF-8. Najczęściej chodzi o adresy URL, nazwy plików wysyłanych na serwer, identyfikatory w bazach danych, wiadomości SMS i import do starszych programów księgowych.

Osobnym przypadkiem jest wysyłka SMS-ów, bo wiadomość zapisana w podstawowym alfabecie GSM mieści 160 znaków. Wystarczy jedna polska litera, żeby operator przełączył ją na kodowanie Unicode, a limit spadł do 70 znaków. Przy wysyłce masowej oznacza to ponad dwukrotny wzrost kosztu, więc usunięcie diakrytyków jest wtedy decyzją czysto ekonomiczną.

Jak działa zamiana liter z ogonkami

Podstawą jest normalizacja Unicode w postaci NFD. Rozkłada ona znak złożony na literę bazową i osobny znacznik diakrytyczny, więc ą staje się parą a + ogonek, a ó parą o + kreska. Wystarczy potem usunąć wszystkie znaki z zakresu znaczników łączących, a zostaną same litery bazowe. Ta jedna operacja załatwia osiem z dziewięciu polskich liter, a przy okazji radzi sobie z niemieckim ü, francuskim é czy czeskim č.

Wyjątkiem jest ł. W Unicode ma własny numer kodowy, więc normalizacja nie ma w nim czego rozkładać i zamianę wykonuje osobna reguła. Ten sam problem dotyczy skandynawskiego ø i chorwackiego đ, które też obsługujemy.

Cały wynik mieści się w ASCII - w zestawie 128 znaków, który każdy system operacyjny koduje tak samo. Konwersja do ASCII kupuje więc kompatybilność ze starszym oprogramowaniem, a płaci się za nią poprawnością zapisu.

Czym różni się transliteracja fonetyczna

Podstawowa zamiana zachowuje kształt litery, więc ś zostaje s, bo tak wygląda po zdjęciu kreski. Transliteracja fonetyczna próbuje zachować brzmienie i zapisuje ś jako sz. Przyjęliśmy następującą konwencję:

  • ą → on i ę → en, czyli samogłoski nosowe rozbite na samogłoskę i spółgłoskę nosową,
  • ć → cz i ś → sz, bo najbliższym zapisem zmiękczeń są polskie dwuznaki,
  • ż → z i ź → z, gdzie obie litery dostają w tej konwencji ten sam odpowiednik,
  • ó → u, bo w polszczyźnie te dwie litery brzmią identycznie,
  • ł → l i ń → n, bez zmiany względem trybu podstawowego.

Konwencja jest uproszczona, bo prawdziwa wymowa zależy od pozycji w wyrazie, gdzie ę na końcu brzmi jak e, ą przed b i p jak om, a ł jak angielskie w. Rozróżnienie tych przypadków wymagałoby analizy sąsiedztwa i tak czy inaczej nie dałoby wyniku dobrego dla wszystkich zastosowań. Transliteracja przydaje się przy zapisie polskich nazwisk dla osób nieznających polszczyzny i przy generowaniu haseł czytanych na głos.

Polskie znaki w plikach i nazwach

Narzędzie pracuje na czystym tekście, więc plik obrabiasz przez schowek. Zaznacz cały tekst w Notatniku albo w edytorze kodu, wklej go w górne pole, a wynik skopiuj z powrotem do pliku. Formatowania z Worda ani stylów z arkusza ta droga nie przenosi, bo do pola wejściowego trafiają same znaki. Tak samo poprawia się napisy do filmu, gdy odtwarzacz wyświetla polskie litery jako krzaki, bo czyta plik w innym kodowaniu, niż zostało użyte przy zapisie.

Drugi klasyczny kłopot to polskie znaki w nazwach plików. Windows i Linux radzą sobie z ogonkami, ale serwer po drugiej stronie połączenia FTP, adres w linku do pobrania i indeks wyszukiwarki potrafią zamienić je w ciąg procentów. W e-commerce wraca to przy zdjęciach produktowych, których nazwa idzie prosto do adresu obrazka i ma zostać czytelna. Przy imporcie arkusza do Excela albo do bazy danych to samo dotyczy nagłówków kolumn i identyfikatorów, bo część systemów obsługuje w nich wyłącznie ASCII. Z tego samego powodu nazwy zmiennych i kluczy trzyma się bez diakrytyków, kiedy programujesz.

Dlaczego nie da się przywrócić polskich znaków

Skoro narzędzie usuwa ogonki, czy potrafi je dodać z powrotem? Nie, i nie zrobi tego żadne narzędzie działające bez słownika i bez kontekstu zdania. Zamiana jest bezpowrotna - wiele różnych wyrazów po usunięciu diakrytyków wygląda tak samo. Z zapisu laska, sad i kat nie wynika, czy autor miał na myśli laskę, czy łaskę, sad czy sąd, kat czy kąt.

Programy, które próbują ten problem obejść, opierają się na modelach językowych i słownikach form fleksyjnych, a mimo to mylą się na nazwach własnych, na nazwiskach obcego pochodzenia i w krótkich fragmentach, w których żadne sąsiednie słowo nie podpowiada właściwej formy. Dla tekstu, który ma trafić do umowy albo do bazy klientów, taki wynik i tak sprawdzasz ręcznie, więc świadomie nie budujemy tej funkcji zamiast dawać narzędzie, któremu nie można ufać.

Najczęstsze pytania

Czy narzędzie usuwa, czy zamienia polskie znaki?

Zamienia. W trybie podstawowym każda litera diakrytyczna dostaje łaciński odpowiednik, więc ą przechodzi w a, a tekst zachowuje tę samą długość. Prawdziwe usuwanie zaczyna się po włączeniu przełącznika „Usuń też znaki specjalne”, który zostawia w tekście wyłącznie litery i cyfry, a ciągi spacji skraca do jednej. Licznik „Zmienione znaki” pokazuje, ilu miejsc dotknęła konwersja.

Jak usunąć polskie znaki z pliku tekstowego albo z napisów do filmu?

Otwórz plik w Notatniku albo w edytorze kodu, zaznacz cały tekst i wklej go w górne pole. Skopiuj wynik i zapisz go z powrotem do pliku, wybierając kodowanie, którego oczekuje program docelowy. W trybie podstawowym numery i znaczniki czasu w pliku SRT zostają nietknięte, bo zamiana rusza wyłącznie litery, więc napisy dalej działają poprawnie w odtwarzaczu.

Co zrobić z polskimi znakami w nazwach plików?

Wklej listę nazw, po jednej w każdym wierszu, i zaznacz „Zamień na małe litery”. Wynik skopiujesz jednym kliknięciem i użyjesz go przy zmianie nazw w menedżerze plików albo w skrypcie. Samej zmiany nazw na dysku ani wysyłki przez FTP narzędzie nie wykona, bo strona w przeglądarce nie ma dostępu do systemu plików.

Czy usunięcie ogonków psuje pisownię i znaczenie wyrazów?

Tak, zapis bez akcentów jest ortograficznie błędny, a w części wypadków potrafi zmienić znaczenie. „Sad” i „sąd” to dwa różne słowa, które po zdjęciu ogonka wyglądają identycznie. Dlatego tekst bez polskich znaków nadaje się do identyfikatorów i nazw technicznych, a treść przeznaczoną do czytania zostawiaj w pełnej pisowni.

Czy da się przywrócić polskie znaki w tekście?

Nie w sposób pewny i dlatego nie oferujemy takiej funkcji. Po usunięciu diakrytyków „laska” i „łaska” wyglądają identycznie, a wybór między nimi wymaga zrozumienia zdania. Narzędzia, które to próbują robić, opierają się na słownikach i statystyce, i regularnie mylą się na nazwiskach, nazwach firm i w krótkich fragmentach. Jeśli musisz odtworzyć tekst, najszybszą drogą jest korekta w edytorze z polskim słownikiem.

Czy tekst jest gdzieś wysyłany?

Nie wysyłamy go nigdzie. Zamiana działa w przeglądarce, w kodzie strony, a wpisany tekst i wynik nie opuszczają Twojego urządzenia. Nic nie trafia na nasz serwer i nic nie jest zapisywane. Możesz to sprawdzić w zakładce „Sieć” w narzędziach deweloperskich, bo po wpisaniu tekstu nie wychodzi żadne zapytanie.

Dlaczego litera „ł” wymaga osobnej reguły?

Bo w Unicode ł jest samodzielnym znakiem z własnym numerem kodowym. Normalizacja NFD, która rozkłada ą na a i ogonek, nie ma czego w nim rozłożyć, więc zamianę wykonuje osobna reguła. Dokładnie ten sam problem dotyczy duńskiego ø i chorwackiego đ.

Czy narzędzie usuwa znaki z innych języków?

Tak, przy podstawowej zamianie niemieckie ä ö ü, francuskie é è ç, czeskie č š ř, hiszpańskie ñ i skandynawskie å ø też stracą znaki diakrytyczne, bo mechanizm jest ogólny. Niemieckie ß zamieniamy na ss, zgodnie z zasadą stosowaną przy zapisie bez znaków specjalnych.

Po co przełącznik „Usuń też znaki specjalne”?

Do przygotowania danych dla systemów, które akceptują wyłącznie litery i cyfry: identyfikatorów, nazw plików, kluczy w bazie. Po jego włączeniu z tekstu znikają wszystkie znaki interpunkcyjne, a ciągi spacji sprowadzane są do pojedynczej spacji.

Czy narzędzie obsługuje wielkie litery?

Tak, wielkie litery zamienia analogicznie do małych, więc Ł daje L, a Ą daje A. Wielkość liter zostaje bez zmian, chyba że wyraźnie o to poprosisz przełącznikiem „Zamień na małe litery”. Domyślnie Łódź zamienia się w Lodz, a nie w lodz. W trybie fonetycznym Ą daje On, a wyraz pisany samymi wersalikami daje ON.