Mam sznurek. Jak usunąć cały tekst po określonym znaku? ( W tym przypadku...
)
Tekst po ...
zmianie się zmieni, dlatego chcę usunąć wszystkie znaki po pewnym.
python
replace
python-2.6
Solihull
źródło
źródło
Odpowiedzi:
Najpóźniej od razu podziel separator i weź pierwszy element:
Nie powiedziałeś, co się stanie, jeśli nie ma separatora. Zarówno to, jak i rozwiązanie Alexa zwróci w tym przypadku cały ciąg.
źródło
Zakładając, że separatorem jest „...”, ale może to być dowolny ciąg.
Jeśli separator nie zostanie znaleziony,
head
będzie zawierał cały oryginalny ciąg.Funkcja partycji została dodana w Pythonie 2.5.
źródło
Jeśli chcesz usunąć wszystko po ostatnim wystąpieniu separatora w ciągu, uważam, że działa to dobrze:
<separator>.join(string_to_split.split(<separator>)[:-1])
Na przykład, jeśli
string_to_split
jest to ścieżka podobna do ścieżkiroot/location/child/too_far.exe
i chcesz tylko ścieżkę do folderu, możesz ją podzielić,"/".join(string_to_split.split("/")[:-1])
a otrzymaszroot/location/child
źródło
Bez RE (co, jak zakładam, jest tym, czego chcesz):
lub w przypadku RE:
źródło
Metoda find zwróci pozycję znaku w ciągu. Następnie, jeśli chcesz usunąć wszystko z postaci, zrób to:
Jeśli chcesz zachować znak, dodaj 1 do pozycji znaku.
źródło
Wynik: „To jest test”
źródło
Z pliku:
źródło
innym łatwym sposobem użycia re będzie
źródło