W tym samouczku nauczymy się usuwać pojedyncze cudzysłowy z ciągu znaków. Czasami musimy usunąć wszystkie sekcje lub tylko te otaczające ciąg. Możemy również usunąć pojedyncze i podwójne cudzysłowy. Będziemy używać różnych metod usuwania cudzysłowów; możesz użyć dowolnego z nich, co zależy wyłącznie od użytkownika.
Weźmy przykładowy ciąg znaków z trzema podwójnymi cudzysłowami.
example_str = ''This is a string' with quotes''
Użyjemy kilku metod, aby usunąć wszystkie 'z przykładowego ciągu.
example_str = ''This is a string' with quotes''
Użyjemy kilku metod, aby usunąć wszystkie ' z przykładowego ciągu.
Korzystanie z metody zamiany().
The str.replace() metoda przyjmuje dwa argumenty - ciąg znaków, który chcemy zastąpić i ciąg znaków zastępujący. W takim przypadku podwójny cudzysłów (') zastąpimy pustym ciągiem znaków. Rozumiemy następujący przykład.
Przykład -
example_str = ''This is a string' with quotes'' new_str = example_str.replace(''', '') print(new_str) # This is a string without quotes
Wyjście:
This is a string with quotes
Wyrażenie regularne
Możemy użyć wyrażeń regularnych, aby usunąć wszystkie cudzysłowy z ciągu. Zanim zaczniemy używać wyrażeń regularnych w Pythonie, musimy najpierw zaimportować moduł re. Rozumiemy następujący przykład.
Przykład -
import re example_str = ''This is a string' with quotes'' rem_quotes = re.sub(''', '', example_str) print(rem_quotes)
Wyjście:
This is a string with quotes
Otrzymujemy nowy ciąg znaków bez cudzysłowów.
str.join()
Ta metoda jest również pomocna w usuwaniu wszystkich cudzysłowów z ciągu w Pythonie. To rozwiązanie ma bardziej złożoną składnię niż inne rozwiązania i sprawdza każdy znak danego ciągu i dołącza każdy z nich, co nie jest cudzysłowem do pustego ciągu.
Przykład -
import re example_str = ''This is a string' with quotes'' rem_quote = ''.join(i for i in example_str if i not in ''') print(rem_quote)
Wyjście:
This is a string with quotes
Jak usunąć cudzysłowy otaczające ciąg znaków
W poprzednich sekcjach omówiliśmy wiele sposobów usuwania cudzysłowów z ciągu. Ale istnieje bardziej powszechny problem, jak usunąć tylko cudzysłowy otaczające ciąg. The str.strip() metoda ma na celu wykonanie takiej operacji.
Weźmy przykład_str z poprzedniej sekcji i usuń cudzysłów za pomocą rozebrać się() metoda.
Przykład -
import re example_str = ''This is a string' with quotes'' rem_quote = example_str.strip(''') print(rem_quote)
Wyjście:
This is a string' with quotes
The rozebrać się() metoda usuwa początkowe i końcowe cudzysłowy z example_str.
The rozebrać się() zawiera także dwie metody pochodne - str.lstrip() i str.rstrip(). Pierwszy usuwa wszystkie cudzysłowy początkowe, a drugi usuwa wszystkie cudzysłowy końcowe.
Przykład -
example_str = ''This is a string' with quotes'' rem_quotes = example_str.lstrip(''') print(rem_quotes) rem_quotes = example_str.rstrip(''') print(rem_quotes)
Wyjście:
This is a string' with quotes' 'This is a string' with quotes
Wniosek
W tym samouczku omówiono różne sposoby usuwania cudzysłowów z ciągu znaków w języku Python. Najpierw wyjaśniliśmy, jak usunąć wszystkie cudzysłowy z łańcucha przy użyciu kilku różnych metod - str.replace(), str.join() i re.sub(). Następnie wyjaśniliśmy metodę str.strip() oraz jej pochodne str.lstrip() i rstrip().