Seite 1 von 1

Regex (richtigen Teil aus String filtern)

Verfasst: Donnerstag 9. Februar 2017, 19:31
von joko15
Hallo zusammen,

ich verzweifel gerade schon ne Weile und finde nicht den richtigen Ausdruck um die Strings richtig zu filtern, wäre nett wenn mir jemand helfen könnte. :K

Den Fett geschriebenen Inhalt würde ich gerne herausfiltern.
PS: Ich verwende Python 3

3 Beispiele:
20430 Text Abc BB 16 3,3 BE 5 4 2 01.01.2017
20687 Beliebiger Text BB 16 1,0* BE 5 4 1 05.07.2016
16548 Abc Text BB 16 5,0 NB 0 4 2 15.06.2016

var1_1='Text Abc'
var1_2=3,3

var2_1='Beliebiger Text'
var2_2=1,0

var3_1='Abc Text'
var3_2=5,0

Gruß

Re: Regex (richtigen Teil aus String filtern)

Verfasst: Donnerstag 9. Februar 2017, 19:49
von pillmuncher
@joko15: Was hast du denn schon versucht?

Re: Regex (richtigen Teil aus String filtern)

Verfasst: Donnerstag 9. Februar 2017, 19:51
von Sirius3
@joko15: was hast Du schon versucht? Kennst Du split und rsplit mit ihrem zweiten Parameter? Ist es Absicht, dass in der zweiten Zeile 1,0* steht?

Re: Regex (richtigen Teil aus String filtern)

Verfasst: Donnerstag 9. Februar 2017, 19:52
von joko15
für var1_2 und var2_2 hab ich hiermit bekommen:

Code: Alles auswählen

        my_regex = re.escape('BB 16') + r"(.*?)BE"
        print(re.findall(my_regex, line))
Aber var3_2 bekomme ich damit ja nicht :(
für die anderen Variablen hab ich leider kein Plan wie ich da dran kommen könnte.

PS: 1,0* ist Absicht

Re: Regex (richtigen Teil aus String filtern)

Verfasst: Donnerstag 9. Februar 2017, 20:09
von Sirius3
@joko15: man würde wohl mit

Code: Alles auswählen

text, _, _, zahl, _, _, _, _, _ = "16548 Abc Text BB 16 5,0 NB 0 4 2 15.06.2016".rsplit(None, 8)
anfangen.

Re: Regex (richtigen Teil aus String filtern)

Verfasst: Donnerstag 9. Februar 2017, 20:33
von joko15
ok vielen Dank ich glaub mit dem split bekomme ich es hin :)