Hogyan lehet eltávolítani az idézeteket a karakterláncokból a Pythonban

Bevezetés

Számos módon távolíthatja el az idézőjeleket egy karakterláncból a Pythonban. Előfordulhat, hogy el kell távolítania az összes idézőjelet, vagy csak azokat, amelyek egy karakterláncot körülvesznek. Előfordulhat, hogy el kell távolítania az egyszeres vagy dupla idézőjeleket is.

Ebben a rövid cikkben összeállítottunk egy átfogó listát azokról a módszerekről, amelyek segítségével eltávolíthatja az idézőjeleket egy karakterláncból a Pythonban. Teljesen rajtad múlik, hogy melyiket használod. Felhívjuk figyelmét, hogy az itt felsorolt ​​megoldások nem a legjobbtól a legrosszabbig vannak rendezve. Mindegyik megoldás jó, ha egy adott esetben megfelel az Ön igényeinek.

Hogyan lehet eltávolítani az összes idézetet egy karakterláncból a Pythonban

Először is nézzük meg, hogyan távolíthatunk el minden idézetet egy karakterláncból. Az ebben a szakaszban felsorolt ​​megoldások módosíthatók úgy, hogy egyszeres és kettős idézőjelekkel is működjenek. Ennek a cikknek a céljaira azonban tegyük fel, hogy van egy példakarakterláncunk, amelyben három dupla idézőjel van:

example_str = '"This is a string" with quotes"'

Ebben a részben megvizsgáljuk az összes eltávolításának számos módját " tól example_str.

str.replace()

Az első megközelítés, amelyet megbeszélünk, a str.replace() módszer a example_str. Két argumentumot fogad el – a cserélni kívánt karakterláncot és a helyettesítő karakterláncot. Ebben az esetben dupla idézőjelbe cseréljük (") üres karakterlánccal:

new_str = example_str.replace('"', '')
print(new_str) 

A str.replace() Az ily módon használt minden dupla idézőjel eltávolítja a example_str.

Reguláris kifejezések

Ez a megközelítés azt használja szabályos kifejezések az összes idézet eltávolításához egy karakterláncból. Mielőtt elkezdené a reguláris kifejezések használatát a Pythonban, először importálnunk kell a re modul:

import re

Ezt követően használhatjuk a re.sub() módszer a helyettes az idézőjel minden előfordulása üres karakterlánccal:

new_str = re.sub('"', '', example_str)
print(new_str) 

Ez megadja nekünk a example_str idézetek nélkül.

str.join()

A str.join() egy másik módszer, amellyel eltávolíthatjuk az összes idézetet egy karakterláncból a Pythonban. Ennek a megoldásnak kicsit bonyolultabb a szintaxisa, mint más megoldásoknak, ha még nem ismeri a join() módszer. Lényegében végigmegyünk a example_str karakterről karakterre, és fűzze mindegyiket az üres karakterlánchoz, amely nem idézőjel. Így megkapjuk a example_str idézetek nélkül:

new_str = ''.join(c for c in example_str if c not in '"')
print(new_str) 

Hogyan lehet eltávolítani a karakterláncot körülvevő idézeteket

Eddig több megközelítést is megvitattunk az eltávolítással kapcsolatban minden idézőjelek egy karakterláncból a Pythonban. Ez csak az egyik módja annak, hogy eltávolítsuk az idézőjeleket egy karakterláncból. Állítólag a leggyakoribb probléma az eltávolítás módja csak egy karakterláncot körülvevő idézetek. A str.strip() a módszer éppen ezt a célt szolgálja. Ezért megbeszéljük a str.strip() módszer ebben a részben.

Tegyük fel, hogy nálunk pontosan ugyanaz example_str mint az előző szakaszban, és csak az első és az utolsó idézőjelet szeretnénk eltávolítani:

example_str = '"This is a string" with quotes"'

az str.strip() dupla idézőjellel, mivel az argumentum eltávolítja a bevezető és a záró idézőjeleket a example_str:

Tekintse meg gyakorlatias, gyakorlati útmutatónkat a Git tanulásához, amely tartalmazza a bevált gyakorlatokat, az iparág által elfogadott szabványokat és a mellékelt csalólapot. Hagyd abba a guglizást a Git parancsokkal, és valójában tanulni meg!

new_str = example_str.strip('"')
print(new_str) 

Jegyzet: Nem számít, hány vezető és/vagy vezető idézőjel van a karakterláncban, a str.strip() mindegyiket eltávolítja.

A szokásos módon str.strip() módszernek van két származéka is – str.lstrip() és a str.rstrip(). Az első eltávolítja minden vezető idézet, a második pedig eltávolítja minden záró idézet:

new_str = example_str.lstrip('"')
print(new_str) 

new_str = example_str.rstrip('"')
print(new_str) 

Következtetés

Ebben a rövid cikkben átfogó pillantást vettünk arra, hogyan távolíthatunk el idézőjeleket egy karakterláncból a Pythonban. Először is elmagyaráztuk, hogyan távolíthatunk el minden idézetet egy karakterláncból többféle módszerrel – str.replace(), str.join()és re.sub(). Ezt követően megnéztük a str.strip() módszer, valamint származékai str.lstrip() és a str.rstrip().

Időbélyeg:

Még több Stackabus