PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : suche python funktion die mir sagt ob eine string in einem anderen vorkommt



luh
08-06-2005, 15:12
hi leuts
ich suche nach einer funktion, die mir sagt ob ein string in einem anderen vorkommt. sowas wie pattern.is_in(string)
ich habe gesehen es gibt match. aber das sucht nur den anfang eines strings ab.
habt ihr ne idee?
gruss
luh

luh
08-06-2005, 16:53
okay, habe mir jetzt sowas selber zusammengebastelt

def is_in(pattern, string):
patternLength = len(pattern)
if(string[-patternLength:] == pattern):
return 1
else:
return 0

vielleicht kann das ja jemand anders was bringen

nur als erlaeuterung
dies schaut ob 'pattern', am ende von 'string' ist.
das ist noch nicht ganz is_in, aber fuer mich tuts genau was es muss ;)
gruss
luh

michael.sprick
08-06-2005, 17:31
meinst Du sowas wie


import string
string.find("wir rufen Dich Galaktika...","Dich")


Gibt Dir entweder den Index zurück, wo "Dich" gefunden wurde oder -1, wenn´s nicht drin vorkommt...

Joghurt
08-06-2005, 17:48
Seit Python 2.3 geht es auch ganz, ganz einfach
>>> "foo" in "foobar"
True
>>> "baz" in "foobar"
False

luh
08-06-2005, 19:39
Seit Python 2.3 geht es auch ganz, ganz einfach
>>> "foo" in "foobar"
True
>>> "baz" in "foobar"
False

interessant.
wie pack ich das dann in ein if-statement?
if('baz' in 'foorbar') ???
gruss
luh

Joghurt
08-06-2005, 23:33
Genau:
if "foo" in "baz":
print "This can't happen"
needle = "arier"
haystack = "Parlamentarier"
if needle in haystack:
print "Es gibt noch Arier im Parlament"