Podstawową metodą wyszukiwania i wymiany ciągu jest używa wyrażeń regularnych. Regex jest potężny w znajdowaniu wzorów, filtrowania i innych.
W tym przewodniku omówimy różne sposoby manipulowania strunami w Ruby. Omówimy, jak wykonać podstacja, wstawienie i wymianę strunową.
Wymiana podkładu
Najprostszym sposobem wymiany ciągów w Ruby jest użycie wymiany substringowej. Możemy określić ciąg, aby wymienić w parę kwadratowych nawiasów i ustawić wartość wymiany:
Na przykład:
msg = "Programowanie w Ruby jest zabawne!"W powyższym przykładzie użyliśmy indeksowania do wyszukiwania i zastąpienia określonego ciągu.
Jeśli znasz zakres indeksu ciągu, który chcesz zastąpić, możesz określić zakres indeksu jako:
var1 = "Hello World"W przykładzie zastępujemy znaki od indeksu 0 do 4, który zawiera ciąg „Hello”.
Wymień metodę
Ruby ma metodę zastąpienia, która zastępuje całą zawartość określonego łańcucha ustawioną zawartością.
Na przykład:
Name = "John Doe"Wyszukaj i wymień
Typowym przypadkiem podczas manipulowania strunami w Ruby jest wyszukiwanie i zastąpienie określonego wzoru łańcucha. Możemy to osiągnąć za pomocą wbudowanej metody sub i GSUB.
Te metody akceptują dwa argumenty: ciąg do wyszukiwania i ciąg do zastąpienia. Używają wyrażeń regularnych do zlokalizowania pasujących wzorów i zastępowania wszystkich wystąpień wzorów.
Metody Sub i GSUB nie modyfikują Źródło Źródło. Możesz jednak użyć substancji! i gsub! Aby zmodyfikować ciąg źródłowy.
Przykład 1
Poniżej znajduje się prosty przykład wyszukiwania i wymiany metod GSUB.
msg = "Programowanie w Ruby jest zabawne!"W powyższym przykładzie wyszukiwamy ciąg „Ruby” i zastępujemy go ciągiem „Python”.
Jak wspomniano, metody sub i GSUB tworzą nowy ciąg, w którym można zapisać zmienną:
new_msg = msg.Sub („Ruby”, „Python”)Przykład 2
Poniższy przykład ilustruje, jak używać metody podrzędnej z prostym wyrażeniem regularnym:
var1 = "Hello World"Powyższy przykład zlokalizuje ciąg kończący się na LO i zastąpi go „hej”. Poniżej znajduje się przykład wyjścia:
„Hej świat”Przykład 3
Rozważ następujący przykład, który podnosi określone słowo za pomocą Regex:
var = "Hello World"Wstaw ciąg
Możemy również wstawić ciąg do istniejącego ciągu za pomocą metody wstawienia. Weź następujący przykład:
msg = "Hello World"Metoda indeksu przejmie pozycję indeksu i wartość do wstawienia.
Zamknięcie
W tym szybkim przewodniku omówiliśmy różne sposoby zastąpienia ciągu w Ruby za pomocą wbudowanych metod i wyrażeń regularnych.