Seite 1 von 1

Sequenz aus String ausschneiden

Verfasst: Mittwoch 10. Dezember 2008, 13:33
von api
Hallo zusammen,

ich möchte aus einem String einen anderen String ausschneiden. Folgende Strings sind gegeben:

"bin/regs -komponente REG FAN -HOST ingd0988 ingd0778"
"bin/regsbz -komponente REG ING FAN -HOST ingd0988 ingd0778"

Nun möchte ich jeweils die Sequenz (String), die zwischen "-komponente" und "-HOST" liegt, ausschneiden.

Als Ergebnis benötige ich also:
REG FAN
REG ING FAN

Wie löse ich das geschicktesten?

Verfasst: Mittwoch 10. Dezember 2008, 13:41
von Rebecca

Code: Alles auswählen

In [1]: import re

In [2]: s = "bin/regs -komponente REG FAN -HOST ingd0988 ingd0778"

In [5]: pattern = re.compile("-komponente (.*?) -HOST")

In [6]: pattern.findall(s)
Out[6]: ['REG FAN']
Aber eventuell laesst sich fuer das Gesamtproblem eine bessere Loesung finden?

Verfasst: Mittwoch 10. Dezember 2008, 13:47
von api
Da sieht doch schonmal sehr gut aus... Ich werde das mal einbauen und glaube, dass du mir schon viel geholfen hast.

Danke dir... :D

Verfasst: Mittwoch 10. Dezember 2008, 16:08
von str1442
Ein String ist eine Sequenz, und man kann genauso mit ihm umgehen:

Code: Alles auswählen

In [2]: a = "String"

In [3]: print a[2:-2]
ri