Strona WS » ReplaceEm

O autorze, kontakt

Na tej stronie:

Wstępik

ReplaceEm (Windows) to darmowy program do zamiany tekstu w wielu plikach (autorstwa Custom Fit Software [ang]). Jest przydatny przy pracy nad stroną www, na przykład gdy chcemy zamienić we wszystkich plikach adres e-mailowy na inny. W odróżnieniu jednak od innych dostępnych w Sieci programów ReplaceEm pozwala wprowadzić zmiany znacznie bardziej skomplikowane - np. we wszystkich plikach po <BODY> dodać <H1> o treści takiej, jak <TITLE> danego pliku. Program nie ma niestety (przynajmniej w wersji 2.0) polskiej wersji językowej. W związku z tym postanowiłem napisać krótką instrukcję, która - mam nadzieję - ułatwi komuś skorzystanie z programu. Na wszelki wypadek jednak eksperymentowanie z zamianami w plikach zacznijcie od.. zrobienia ich kopii zapasowej ;-)

Ważne odsyłacze: pobierz ReplaceEm [ang], zapoznaj się z pełniejszym i bardziej fachowym opisem programu [pl] (autorstwa Macieja Romaniaka).

Do góry

Początek

Po pierwszym uruchomieniu programu tworzymy nową 'grupę' (Add Replace Group), a następnie dodajemy do niej pliki (prawy przycisk myszy na nowej grupie » pojawia się menu kontekstowe » Add File(s)). W tym przykładzie chcemy, aby zamiany były dokonywane we wszystkich plikach naszej strony www, czyli we wszystkich plikach html (include file filter: *.html) katalogu D:\Moje dokumenty\www, łącznie z podkatalogami (zaznaczona opcja Include files in all subfolders)

Tworzenie grupy Tworzenie grupy Dodawanie plików

Dodawanie plików

Przy okazji dodawania plików możemy od razu określić sposób tworzenia kopii zapasowych plików przy zamianie. Mogą one nie być tworzone wcale (odznaczona opcja enable file backup). Jeśli jednak chcemy mieć możliwość powrotu do wersji sprzed zamiany, to możemy stworzyć kopie zapasowe 'obok' plików ze zmianami. Poniżej dwa przykłady: w pierwszym każdemu zmienionemu plikowi będzie towarzyszył stary plik z dodanym rozszerzeniem 'kopia' (np. przy zamianie treści pliku o nazwie index.html stara wersja zostanie zapisana w tym samym katalogu jako index.html.kopia). W sytuacji przedstawionej na drugim obrazku 'stare' wersje wszystkich plików znajdą się w sąsiednim katalogu (D:\Moje dokumenty\kopia zapasowa)

Kopie zapasowe z dodaniem rozszerzenia Kopie zapasowe w innym folderze

W końcu zaczynamy wpisywać tekst do zamiany (Original text) i ten właściwy (Replacement text). Powiedzmy, że chcemy poprawić często przytrafiającą się literówkę (storna » strona) oraz zamienić wszędzie nasz stary adres e-mailowy na nowy, aktualny. Po wpisaniu wszystkiego w końcu klikamy start replacing i już po chwili obserwujemy efekty.

Zamiana tekstu
Do góry

Troszkę więcej

Zamiana jednego wyrazu na inny jest, jak widać, bardzo prosta. Zdarza się jednak, że chcemy wymienić fragment tekstu składający się z kilku linijek. Jak go wpisać? Możemy zastąpić każdy znak nowej linii (Enter) tajemniczym oznaczeniem {}e, nie jest to jednak zbyt wygodne:

Zamiana kilku linijek

Prościej jednak będzie wejść w 'zaawansowaną edycję' (prawy przycisk myszy nad polem, w które wpisuje się tekst do zamiany » Advanced edit). W tym trybie znaki nowej linii czy tabulatory wpisuje się 'normalnie'.

Zamiana kilku linijek w trybie Advanced Edit

W opcjach możemy wybrać sposób, w jaki program traktuje wpisywane przez nas teksty do zamiany. W najprostszym przypadku jest to 'Case Insensitive', czyli wyszukiwanie i zamiana podanego przez nas tekstu bez zwracania uwagi na wielkość liter (w pierwszym przykładzie zamieniona zostanie zarówno 'storna', jak i 'Storna'). Jeśli nam to nie odpowiada, możemy kazać programowi zwracać uwagę na wielkość liter (opcja 'Case Sensitive'):

Wybór opcji Wybór opcji

Jeśli zamieniamy jednocześnie wiele tekstów, możemy dla każdego z nich ustawić tę opcję oddzielnie w oknie 'zaawansowanej edycji' (Advanced edit) lub - mniej wygodnie - w  zwykłej edycji wpisując na początku tekstu {}s lub {}i.

Do góry

Wyrażenia regularne

Oprócz prostych trybów zamiany mamy do dyspozycji także tzw. wyrażenia regularne (Regular Expression). Są one szczególnie przydatne, gdy wyszukiwany tekst może występować w wielu wariantach. Definiując wyszukiwany, przeznaczony do zamiany tekst (Original text) możemy użyć m.in. następujących wyrażeń regularnych:

Z kolei przy definiowaniu tekstu docelowego (Replacement text) znak & czyli 'and' oznacza cały znaleziony tekst. Załóżmy, że jako tekst do zamiany (Original text) wpisaliśmy Adam|Bartek|Czarek|Darek - znaleziona zostanie zatem każde z wymienionych imion. Z kolei jako tekst docelowy (Replacement text) wpisujemy <B>&</B>. Efekt - każde z wymienionych imion zostanie znalezione i 'obłożone' znacznikami <B>, czyli - w kodzie HTML - pogrubione.

I ostatnie przykłady, cały czas oczywiście w trybie Regular Expression Search. W tekście wyszukiwanym zastosujemy kilka wyrażeń (.+), czyli wyszukane zostanie kilka fragmentów tekstu. Nie wiemy co w nich jest, mimo to możemy je wykorzystać w tekście docelowym stosując odpowiednie oznaczenia:

Bardzo ważna uwaga: wyrażenie regularne typu <H1>(.+)</H1> stara się znaleźć jak najwięcej tekstu - wymieniony zostanie fragment od pierwszego <H1> do ostatniego </H1>, czyli także cały tekst między pierwszym a ostatnim nagłówkiem drugiego poziomu (np. <H1>Tytuł</H1>Tekst<H1>Tytuł</H1>). Jest to w zasadzie oczywiste - (.+) wyszukuje wszystkie ciągi znaków, w tym także </H1>. Jeśli nie chemy by wyszukiwany ciąg znaków mógł zawierać </H1>, musimy tego wyraźnie zabronić stosując zapis <H1>([^</H1>]+)</H1>. Tego problemu nie ma dla używanego przeze mnie w przykładach <TITLE>, które w pliku HTML występuje tylko jeden raz.

Zamiana TITLE z H1

Dla przypomnienia: pobierz ReplaceEm [ang], zapoznaj się z pełniejszym i bardziej fachowym opisem programu [pl] (autorstwa Macieja Romaniaka) TU lub tutaj

Do góry

http://www.hal.trzepak.net/faq/winxp/faqxp.html -strona główna FAQ XP