ich habe folgendes Problem. Soo ich habe einen Logfile eines GameServers der so aussieht:
4289:44 K;31019120;9;allies;[Out]Buccaneer;1528214;10;axis;[Out]TiRiTh;ak74u_reflex_mp;40;MOD_PISTOL_BULLET;torso_lower
4289:45 K;1528214;10;axis;[Out]TiRiTh;84655;3;allies;[Out]JouleS;kiparis_silencer_mp;30;MOD_RIFLE_BULLET;torso_lower
4289:46 D;10426877;1;allies;SKSB_Smarties;1528686;2;axis;[Out]Desteny;frag_grenade_mp;15;MOD_IMPACT;left_foot
.
.
.
meine erste Idee war es die gesuchten Abschnitte(fett gedruckt) mit find() zu suchen und herauszufiltern. Dann habe ich einen Tipp bekommen, das mit Regular Expression zu machen. Das Modul hab ich mir dann angesehen und auch die Beispiele dazu. Hier die Page: http://www.tutorialspoint.com/python/py ... ssions.htm. Ich muss ja das ";" als Trennzeichen nehmen, aber ich komm trotz der Hilfe, der Page nicht weiter, weil ich nicht verstehe wie ich mir den Pattern bauen soll. Bei manchen Beispielen sehen die pattern so aus:
Code: Alles auswählen
foo = ' [9764327] = ["oasdsas"] # ["agfdgdffff"]'
m = re.search(r"=\s*\[([^\]]*)", foo)
print(m.group(1))
Code: Alles auswählen
matchObj = re.search( r';(.*);(.*)(\.*)', line, re.M|re.I)
print "matchObj.group(1) : ", matchObj.group()
Mit freundlichen Grüßen
schaf220