Jak korzystać z wyrażeń regularnych w funkcji „Znajdź i zamień” w pakiecie LibreOffice w celu zaawansowanej edycji
Funkcja Znajdź i zamień w LibreOffice staje się znacznie bardziej wydajna, gdy przełączysz się z tekstu dosłownego na wyrażenia regularne. Zamiast szukać jednej konkretnej frazy, możesz opisać wzorzec: datę, ciąg spacji, liczbę na końcu akapitu, granicę słowa lub kilka fragmentów tekstu, które chcesz uporządkować.
Istotnym wyborem nie jest to, czy wyrażenie regularne jest „lepsze” niż zwykłe „Znajdź i zamień”. Chodzi o to, czy wzorzec jest na tyle przewidywalny, że wyrażenie regularne oszczędza czas, nie utrudniając jednocześnie weryfikacji edycji. W przypadku jednej zmiany pisowni, wyszukiwanie dosłowne jest zazwyczaj bezpieczniejsze. W przypadku setek podobnie ustrukturyzowanych edycji, wyrażenie regularne może być czystszą opcją.
W tym przewodniku wykorzystano aktualną dokumentację pomocy LibreOffice dostępną w październiku 2026 r. W pomocy LibreOffice składnia wyrażeń regularnych jest identyfikowana jako oparta na ICU, a bieżące opcje funkcji „Znajdź i zamień” są udokumentowane, w tym zamienniki grup przechwytujących, takie jak $1. Układ okien dialogowych może się nieznacznie różnić w zależności od systemu operacyjnego i kompilacji LibreOffice, ale przepływ pracy jest taki sam.
Kiedy wyrażenia regularne są właściwym narzędziem, a kiedy nie
Zanim napiszesz wzór, zdecyduj, który tryb wyszukiwania najlepiej pasuje do Twojego zadania. LibreOffice oferuje kilka alternatyw, a każda z nich wiąże się z innym profilem ryzyka.
Potrzeba edycji
Najlepsza opcja na początek
Główna zaleta
Główny kompromis
Zastąp jedną dokładną frazę
Normalne wyszukiwanie i zamiana
Proste i łatwe do audytu
Nie obsługuje tekstu zmiennego
Dopasuj słowo, ale nie będące częścią dłuższego słowa
Tylko całe słowa lub
Zmniejsza liczbę wyników fałszywie dodatnich
Zachowanie granic wyrazów może mieć znaczenie w przypadku interpunkcji i tekstu Unicode
Znajdź zmienne daty, identyfikatory, liczby lub odstępy
Wyrażenia regularne
Jeden wzór może pasować do wielu wariantów
Szeroki wzór może zastąpić więcej niż zamierzano
Zmień tylko tekst o określonym wyglądzie
Wyszukiwanie formatu / atrybutów / stylów
Celuje w formatowanie, a nie w znaki
Nie nadaje się do wzorców tekstu strukturalnego
Przekształć tekst arkusza kalkulacyjnego za pomocą formuły
REGEX()Funkcja Calc
Wynik może pozostać oparty na formule i możliwy do sprawdzenia
Zmienia logikę arkusza kalkulacyjnego zamiast edytować komórki na miejscu
W przypadku jednorazowego czyszczenia dokumentu funkcja Znajdź i zamień jest zazwyczaj najszybsza. W programie Calc REGEX()funkcja ta może być lepszym rozwiązaniem, gdy chcesz powtarzalnie przekształcić kolumnę pomocniczą zamiast trwale zmieniać oryginalne komórki.
Krok 1: Otwórz Znajdź i zamień
W programie Writer lub Calc wybierz Edycja > Znajdź i zamień . Udokumentowany skrót klawiaturowy to Ctrl+H . Spowoduje to otwarcie pełnego okna dialogowego zamiast mniejszego paska szybkiego wyszukiwania.
Otwórz pełne okno dialogowe Znajdź i zamień z menu Edycja lub za pomocą kombinacji klawiszy Ctrl+H.
Krok 2: Włącz wyrażenia regularne
W razie potrzeby rozwiń dodatkowe opcje, a następnie wybierz Wyrażenia regularne . Po włączeniu tej opcji znaki takie jak ., +, *, ?, nawiasy okrągłe, okrągłe i kotwice mogą mieć specjalne znaczenie, zamiast być traktowane jak zwykły tekst.
Jeśli naprawdę potrzebujesz któregoś z tych znaków, zastąp go ukośnikiem odwrotnym. Na przykład, „ \.dopasowuje kropkę”, a „ .dopasowuje pojedynczy znak”.
Włącz wyrażenia regularne przed wprowadzeniem wzorca wyrażenia regularnego.
Krok 3: Zacznij od wzoru, który możesz łatwo zweryfikować
Dobrym pierwszym testem jest wartość strukturalna, taka jak data w stylu ISO. Na przykład:
\d{4}-\d{2}-\d{2}
Oznacza to: zacznij od granicy słowa, dopasuj cztery cyfry dziesiętne, myślnik, dwie cyfry, kolejny myślnik, dwie cyfry, a następnie zakończ na granicy słowa. Dopasuje tekst w kształcie 2026-10-06. Nie sprawdza, czy data jest kalendarzowo możliwa, więc 2026-99-99również dopasowuje. To użyteczny przykład różnicy między dopasowywaniem struktury a sprawdzaniem znaczenia.
Przed zamianą użyj opcji „Znajdź wszystko” . LibreOffice może zaznaczyć wszystkie wystąpienia w programach Writer i Calc, co pozwala na szybką wizualną kontrolę, czy wzór nie jest zbyt szeroki.
Zanim cokolwiek zmienisz, przetestuj ustalony schemat dat i przejrzyj wyróżnione dopasowania.
Krok 4: Użyj grup przechwytywania, gdy musisz zmienić kolejność tekstu
Nawiasy przechwytują fragmenty dopasowania. W plikach zastępczych LibreOffice, przechwycone grupy są oznaczane jako $1, $2, itd. Dzięki temu grupy przechwytujące są przydatne do zmiany kolejności bez konieczności ponownego wpisywania dopasowanego tekstu.
Na przykład, aby przekonwertować 2026-10-06na 10/06/2026:
Znajdź: (\d{4})-(\d{2})-(\d{2}) Zamień:$2/$3/$1
W przypadku prostej listy nazw dwuczęściowych, wzorzec, taki jak „ (\w+)\s+(\w+)z zamianą”, $2, $1może odwrócić dwa przechwycone słowa. Ten przykład jest przydatny w przypadku list kontrolowanych, ale nie jest uniwersalnym „parserem nazw”: nazwiska ze spacjami, inicjałami, sufiksami, myślnikami i nazwiska wielojęzyczne wymagają bardziej starannego wzorca.
Grupy przechwytywania umożliwiają zachowanie dopasowanego tekstu przy jednoczesnej zmianie jego kolejności w tekście zamiennym.
Krok 5: Określ zakres wyszukiwania przed wprowadzeniem dużej zmiany
Wyrażenia regularne stają się bezpieczniejsze, gdy zmniejszysz obszar, którego mogą dotyczyć. W rozszerzonych opcjach Znajdź i zamień, opcja Bieżące zaznaczenie ogranicza działanie tylko do zaznaczonego tekstu lub komórek. W programie Calc możesz również kontrolować, czy wyszukiwanie ma dotyczyć formuł, wartości wyświetlanych czy komentarzy, a w razie potrzeby możesz przeszukiwać arkusze.
Często jest to lepsze zabezpieczenie niż próba utworzenia jednego ogromnego wyrażenia uwzględniającego każdy wyjątek. Jeśli tylko jedna tabela, sekcja lub kolumna wymaga oczyszczenia, należy ją najpierw zaznaczyć i użyć prostszego wyrażenia regularnego.
Otwórz funkcję Znajdź i zamień dopiero po wybraniu sekcji, którą chcesz edytować, jeśli zamierzasz użyć tylko bieżącego zaznaczenia.
Krok 6: Porównaj opcje Znajdź wszystko, Zamień i Zamień wszystko
Trzy przyciski obsługują różne poziomy pewności:
Znajdź wszystko to najmniej ryzykowna pierwsza próba, ponieważ pokazuje, do czego pasuje dany wzorzec.
Opcja „Zamień” zmienia bieżące dopasowanie, a następnie przechodzi do następnego. Użyj jej, gdy prawdopodobne są wyjątki.
Funkcja Zamień wszystko jest efektywna, gdy dane wejściowe są jednolite i wzorzec został już przetestowany na reprezentatywnym tekście.
Praktyczny obieg pracy polega na zapisaniu dokumentu, uruchomieniu funkcji „Znajdź wszystko” , sprawdzeniu kilku dopasowań na początku, w środku i na końcu, a następnie użyciu poszczególnych akcji „Zamień” , jeśli dane są nieregularne. Funkcji „Zamień wszystko” należy używać tylko wtedy, gdy wzorzec jest wyraźnie ograniczony.
Użyj opcji Znajdź wszystko do inspekcji, opcji Zamień do ostrożnych, pojedynczych edycji i opcji Zamień wszystko dopiero po zweryfikowaniu wzorca.
Krok 7: Użyj granic i punktów zaczepienia, aby ograniczyć liczbę fałszywych dopasowań
Drobne ograniczenia często sprawiają, że wyrażenie regularne jest znacznie bezpieczniejsze. Dokumenty LibreOffice są traktowane jako granica słowa, ^początek akapitu lub komórki oraz $koniec akapitu lub komórki.
Przykłady:
bookdopasowuje słowo „książka” bez dopasowywania go do dłuższego słowa.
^Invoiceznajduje „Fakturę” tylko na początku akapitu lub komórki.
[ ]+$wyszukuje jedną lub więcej spacji lub tabulatorów bezpośrednio przed końcem akapitu lub komórki.
^$znajduje pusty akapit.
Kotwice są zazwyczaj lepsze niż zachłanny symbol wieloznaczny, gdy znana jest lokalizacja tekstu. Wzorzec taki jak „ .*może pasować do znacznie większej liczby elementów niż zamierzono, ponieważ *domyślnie jest zachłanny”.
Granice słów i punkty zaczepienia sprawiają, że wzorce są bardziej szczegółowe, co zmniejsza ryzyko wychwycenia niepowiązanego tekstu.
Krok 8: Wizualna ocena dopasowań przed zatwierdzeniem
Podświetlanie wszystkich dopasowań jest szczególnie przydatne w przypadku wzorców opartych na kapitalizacji, granicach wyrazów lub klasach znaków. Jeśli na przykład wzorzec wybiera nazwy własne w przykładowym akapicie, można od razu sprawdzić, czy wybiera również słowa na początku zdania lub inny tekst, którego nie zamierzano zmieniać.
Ta wizualna analiza jest częścią procesu edycji, a nie tylko ułatwieniem debugowania. Wyrażenia regularne opisują kształt, a nie znaczenie. Technicznie poprawne wyrażenie może jednak okazać się błędne w przypadku dokumentu.
Przed podjęciem decyzji, czy wymiana hurtowa będzie właściwa, należy przejrzeć wyróżnione dopasowania w kontekście.
Praktyczne wzorce wyrażeń regularnych LibreOffice
Zadanie
Znajdź wzór
Możliwa zamiana
Notatki
Znajdź dwie lub więcej spacji dosłownych
[ ]{2,}
jedna spacja
Przydatne do prostego porządkowania odstępów; nie zawiera tabulatorów.
Znajdź odstęp poziomy przed końcem akapitu
[ ]+$
pusty
Dobre dla końcowych spacji i tabulatorów.
Znajdź ciągi cyfr dziesiętnych
\d+
zależy od zadania
\djest zgodny ze standardem Unicode w ICU.
Znajdź okres dosłowny
\.
zależy od zadania
Ucieczka uniemożliwia .działanie jako „dowolna postać”.
Znajdź puste akapity
^$
najpierw przejrzyj
Stosuj ostrożnie, gdy struktura akapitu ma znaczenie.
Sformatuj ponownie RRRR-MM-DD
(\d{4})-(\d{2})-(\d{2})
$2/$3/$1
Przestawia przechwycony tekst. Nie weryfikuje prawdziwych dat.
Podziały wierszy i akapitów wymagają szczególnej uwagi
LibreOffice Writer traktuje podziały wiersza i akapitu inaczej. Oficjalna lista wyrażeń w polu Znajdź w Writerze oznacza podział wiersza wstawiony za pomocą kombinacji klawiszy Shift+Enter. W polu Zamień w Writerze wstawia podział akapitu. Ten sam token nie ma tego samego specjalnego znaczenia w programie Calc.
LibreOffice zauważa również, że wyszukiwanie za pomocą wyrażeń regularnych działa w obrębie jednego akapitu. Ma to znaczenie, jeśli korzystasz z narzędzia do wyszukiwania wyrażeń regularnych przeznaczonego dla programistów, w którym wzorzec może skanować dowolny tekst wielowierszowy. W programie Writer zaprojektuj wyszukiwanie wokół granic akapitów, zamiast zakładać, że jedno wyrażenie będzie swobodnie obejmować kilka akapitów.
Wyrażenia regularne a całe słowa, wyszukiwanie podobieństw i wyszukiwanie formatujące
Wybieraj tylko całe słowa, jeśli sam tekst jest stały
Jeśli potrzebujesz po prostu każdego samodzielnego wystąpienia słowa „kot”, opcja „Tylko całe słowa” jest łatwiejsza do wyjaśnienia i sprawdzenia niż pisanie cat. Wyrażenie regularne staje się bardziej wartościowe, gdy wnętrze dopasowania jest zmienne.
Wybierz wyszukiwanie podobieństw w przypadku niemal identycznych elementów, a nie struktur
Wyszukiwanie podobieństwa ma na celu znalezienie terminów zbliżonych do słowa. Nie zastępuje ono wzorca takiego jak „cztery cyfry, myślnik, a następnie dwie cyfry”. Używaj go do wariacji przypominających pisownię, a nie do tekstu w kształcie danych.
Wybierz Format lub Style, jeśli wygląd jest rzeczywistym kryterium
Jeśli wymaganiem jest „zmień cały pogrubiony tekst w tym stylu”, formatowanie i wyszukiwanie stylów są bardziej bezpośrednie niż wyrażenia regularne. W niektórych obiegach pracy można łączyć kryteria tekstowe z formatowaniem, ale unikaj sytuacji, w której wyrażenie niesie ze sobą odpowiedzialność, którą LibreOffice już obsługuje dzięki dedykowanej opcji wyszukiwania.
Typowe błędy i jak ich unikać
Zapominanie o unikaniu znaków interpunkcyjnych: kropka jest metaznakiem; należy jej używać \.zamiast kropki.
Użycie zbyt ogólnego wzorca: dodanie granic, punktów zaczepienia lub bardziej szczegółowej klasy znaków.
Zakładając, że wyrażenie regularne weryfikuje znaczenie:\d{4}-\d{2}-\d{2} weryfikowany jest kształt, a nie reguły kalendarza.
Przed inspekcją uruchom opcję Zamień wszystko: najpierw użyj opcji Znajdź wszystko, a jeśli to możliwe, ogranicz wyszukiwanie do wybranego elementu.
Kopiowanie składni z innego silnika wyrażeń regularnych bez sprawdzania: LibreOffice wskazuje na wyrażenia regularne ICU w zakresie obsługiwanej składni. Wiele znanych konstrukcji działa, ale szczegóły silnika mogą się różnić.
Oczekiwanie, że jeden wzorzec obejmie dowolne akapity: wyszukiwanie za pomocą wyrażeń regularnych w programie Writer ogranicza się do akapitu; podziały wierszy i akapitów są traktowane w specjalny sposób.
Które podejście powinieneś wybrać?
W przypadku małego dokumentu z kilkoma przewidywalnymi zmianami, zwykłe wyszukiwanie i zamiana lub wyszukiwanie tylko całych słów jest łatwiejsze do przejrzenia. W przypadku powtarzających się porządków obejmujących zmienny tekst, wyrażenie regularne zazwyczaj jest warte dodatkowej konfiguracji. W przypadku nieuporządkowanych danych ludzkich, lepiej wybrać wąski wybór i zamianę pojedynczą zamiast sprytnego, ale nietrwałego wyrażenia. W przypadku transformacji Calc, które powinny pozostać widoczne i możliwe do ponownego obliczenia, rozważ funkcję REGEX()zamiast modyfikować komórki źródłowe na miejscu.
Najbardziej niezawodny obieg pracy z wyrażeniami regularnymi w LibreOffice nie polega zatem na „napisaniu najkrótszego możliwego wyrażenia”. Polega on na: ograniczeniu zakresu, użyciu wzorca wyrażającego wyłącznie to, co wiesz, sprawdzeniu dopasowań, a następnie wybraniu najmniej destrukcyjnego trybu zamiany, który nadal oszczędza czas.