Przejdź do głównej treści
LibraTool logoLibraTool

Znajdź i zamień tekst za darmo

Wyszukuj i zastępuj tekst zwykłym dopasowaniem lub wyrażeniem regularnym, licznikiem dopasowań na żywo i podświetlonym podglądem. Obsługuje brak rozróżniania wielkości liter, całe słowo i odwołania wsteczne do grup przechwytujących.

Działa offline po wczytaniu
Szybkie czyszczenie
Wpisz frazę, aby rozpocząć

💡 W trybie wyrażeń regularnych używaj grup przechwytujących w Znajdź, np. (\d{4})-(\d{2}), i odwołuj się do nich przez $1, $2 w Zastąp — świetne do masowego reformatowania dat, nazw lub identyfikatorów.

Typowe zastosowania

  • Masowe Wyszukiwanie i Zamiana TekstuZamień każde wystąpienie słowa lub frazy w bloku tekstu na raz.
  • Wyszukiwanie i Zamiana za Pomocą RegexUżywaj wyrażeń regularnych z grupami przechwytywania, aby zmienić format tekstu zbiorowo.
  • Wyszukaj i Zamień w KodzieSzybko zmień nazwy zmiennych lub przepisz wzory w snippecie.
  • Wyczyść Nieuporzędkowane DaneUsuń lub znormalizuj błędne znaki, ograniczniki i formatowanie w wklejonych danych.
  • Zamień Słowa Podczas PisaniaZamień powtarzające się słowo lub zmień nazwę postaci w całej wersji roboczej.

Jak to działa

Znajdź i zamień działa w całości w przeglądarce, z użyciem wbudowanego silnika RegExp w JavaScript — bez biblioteki, serwera i przesyłania. Tekst jest przetwarzany lokalnie w chwili pisania: String.prototype.matchAll służy do zliczania, a String.prototype.replace do podstawiania.

  1. 1
    Wzorzec kompilowany do RegExp
    Podczas pisania szukana fraza jest kompilowana do RegExp w JavaScript z opóźnieniem 150 ms, aby patologiczne wzorce nie zamrażały karty przy każdym naciśnięciu klawisza. W trybie zwykłego tekstu każdy metaznak wyrażeń regularnych jest najpierw escapowany, więc kropki i nawiasy są traktowane dosłownie. Włączenie trybu Regex przekazuje wzorzec bez zmian. Tryb całych słów opakowuje wzorzec w kotwice granic słowa \b(?:...)\b, a tryb bez rozróżniania wielkości liter dodaje flagę i.
  2. 2
    Jeden przebieg matchAll zlicza i wyróżnia
    Jedno wywołanie matchAll na tekście po opóźnieniu daje wszystkie obiekty dopasowań. Liczba dopasowań jest odczytywana bezpośrednio z długości tej tablicy. Dla tekstów krótszych niż 200 000 znaków wyróżniony podgląd powstaje przez przejście po przesunięciach dopasowań i opakowanie każdego trafienia znacznikiem <mark> — escapowanie HTML jest stosowane do surowych fragmentów tekstu przed wstawieniem, a nie po, więc dopasowania zawierające &, < lub > są obsługiwane poprawnie.
  3. 3
    Zamiana na dosłowny tekst lub odwołania do grup przechwytujących
    Wynik powstaje przez String.prototype.replace z flagą globalną, zastępując wszystkie dopasowania naraz. W trybie zwykłego tekstu każdy znak $ w tekście zastępczym jest podwajany do $$, więc znaki takie jak $& i $1 są wstawiane dosłownie, a nie interpretowane jako odwołania. W trybie Regex $1, $2 itd. działają jak standardowe podstawienia grup przechwytujących w JavaScript.
  4. 4
    Skopiuj lub pobierz wynik
    Przepisany tekst pojawia się podczas pisania w polu tylko do odczytu. Kopiowanie używa API navigator.clipboard.writeText przeglądarki. Pobieranie synchronicznie tworzy Blob typu text/plain i uruchamia lokalny zapis — nic nigdy nie opuszcza urządzenia.

Powiązane narzędzia

Często zadawane pytania