2016-11-07 1 views
1

Versuchen, die Zahlen in den folgenden Satz loszuwerden. Kann jemand helfen? Dankentfernen Zahlen, die unmittelbar vor Wörtern

x="genes1,2,4,5... activation5–10... modifications11–14... previously15." 

Mein Versuch:

x=re.sub(r'([a-z]),([1-100])', r'\1\2', x) 

SOLL OUTPUT:

"genes... activation... modifications... previously". 
+0

Was ist Ihre gewünschte Ausgabe? – Psidom

+0

Sie möchten nur die Nummer oder auch '-',', '? –

+0

Entschuldigung richtig bearbeitet- ja ich möchte den Bindestrich entfernen –

Antwort

1

Sie gehen könnte für

[-\d,]+ 

es working on regex101.com See.

die in Python wäre:

import re 

x="genes1,2,4,5... activation5–10... modifications11–14... previously15." 
x = re.sub(r'[-\d,]+', '', x) 
print(x) 

Beachten Sie, dass Sie eine andere Art von Strich in Ihrer ursprünglichen Frage hier haben.

+0

Hallo danke dafür, aber ich habe den folgenden Fehler, wenn ich es im Volltext versuchte: SyntaxError: Nicht-ASCII-Zeichen '\ xe2' .... aber Keine Kodierung deklariert; siehe http://python.org/dev/peps/pep-0263/ für Details –

+0

Vielen Dank, es funktioniert –

+0

@johnnyutah: Sie sind herzlich willkommen. – Jan

Verwandte Themen