51 Stimmen

String in Python partitionieren und Wert des letzten Segments nach dem Doppelpunkt ermitteln

Ich brauche den Wert nach dem letzten Doppelpunkt, in diesem Beispiel 1234567

client:user:username:type:1234567

Ich brauche nichts anderes aus der Zeichenkette, nur den letzten id-Wert.

102voto

sorin Punkte 147675
result = mystring.rpartition(':')[2]

Wenn Ihre Zeichenkette keine : enthält das Ergebnis die ursprüngliche Zeichenfolge.

Eine Alternative, die ein wenig langsamer sein soll, ist:

result = mystring.split(':')[-1]

31voto

ralphtheninja Punkte 116647
foo = "client:user:username:type:1234567"
last = foo.split(':')[-1]

18voto

Björn Pollex Punkte 72424

Verwenden Sie dies:

"client:user:username:type:1234567".split(":")[-1]

-1voto

bwl12 Punkte 1

Sie können auch Pygrok verwenden.

from pygrok import Grok
text = "client:user:username:type:1234567"
pattern = """%{BASE10NUM:type}"""
grok = Grok(pattern)
print(grok.match(text))

gibt zurück.

{'type': '1234567'}

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X