Seite 1 von 1

Zahl in String enthalten, nur wo?

Verfasst: Mittwoch 16. Juli 2014, 09:09
von polyworks
Hallo Leutz!

Folgendes Problem (Google hat mir nicht weitergeholfen, finde nur ähnliche Probleme, die mich aber net weiter bringen):

Code: Alles auswählen

str="ABC23" # oder "A2" oder "AB12345"
Jetzt möchte ich entweder die Stelle finden, aber welcher die erste Zahl zu finden ist oder eben gleich den Text von den Zahlen trennen.
Mit einer Abfrage auf Zahlen von 0-9 würde es ja gehen, gibt es aber nichts anderes?

Freundliche Grüße

poylworks

Re: Zahl in String enthalten, nur wo?

Verfasst: Mittwoch 16. Juli 2014, 09:36
von BlackJack
@polyworks: Reguläre Ausdrücke, also in Python das `re`-Modul in der Standardbibliothek.

Re: Zahl in String enthalten, nur wo?

Verfasst: Mittwoch 16. Juli 2014, 09:37
von cofi
Dafuer gibt es Regular Expressions, z.B.:

Code: Alles auswählen

In [11]: import re

In [12]: s = "ABC23"

In [13]: m = re.search("\d+", s)

In [14]: m.group()
Out[14]: '23'

In [15]: s[m.start():]
Out[15]: '23'
Und dann solltest du `str` nicht verwenden:

Code: Alles auswählen

In [16]: str
Out[16]: str

In [17]: type(str)
Out[17]: type

In [18]: type("")
Out[18]: str