Zwei Versionen (Strings) vergleichen
Verfasst: Dienstag 7. April 2009, 06:17
Hallo,
ich würde gerne folgendes realisieren, weiß allerdings nicht genau, wie ich zu dem gewünschten Ergebnis komme:
Über die Windows-Konsole werden mir zwei Versionsnummern als String ausgegeben:
Ich vergleiche also, ob 12.99 mit 13.01 übereinstimmt.
Nun würde ich dies aber gerne abändern, sodass auch das Build mit überprüft wird.
12.99 (Build 2) ist gleichzusetzen mit 12.99.0002, wobei der Build aber auch zweistellig sein kann, beispielsweise 12.99 (Build 33) -> 12.99.0033
Die erste Ausgabe (Programmversion: 12.99 (Build 2)) soll also in einer Variable so umgeändert werden, dass sie gleich aufgebaut ist, wie Ausgabe zwei (12.99.0002).
Mein momentander Gedanke ist, die Zeile einzulesen, nach Build zu suchen, die erste Zahl danach einzulesen und schauen, ob eine weitere folgt oder nicht. Wenn nein, dass fülle mit 3x0, ansonsten lies auch die nächste Zahl ein und fülle mit 2x0 auf. Was dann rauskommt beispielsweise in temp3 schreiben und mit temp2 vergleichen.
Leider komme ich momentan selbst nicht auf die Lösung, deshalb würde ich mich über Hilfe sehr freuen.
Grüße,
ich würde gerne folgendes realisieren, weiß allerdings nicht genau, wie ich zu dem gewünschten Ergebnis komme:
Über die Windows-Konsole werden mir zwei Versionsnummern als String ausgegeben:
Momentan vergleiche ich nur auf die eigentliche Version, nicht aber das Build:Programmversion: 12.99 (Build 2)
13.01.0003
Code: Alles auswählen
temp1 = line[17:22]
temp2 = self.gewollteversion[0:5]
if temp1 == temp2:
mach was
Nun würde ich dies aber gerne abändern, sodass auch das Build mit überprüft wird.
12.99 (Build 2) ist gleichzusetzen mit 12.99.0002, wobei der Build aber auch zweistellig sein kann, beispielsweise 12.99 (Build 33) -> 12.99.0033
Die erste Ausgabe (Programmversion: 12.99 (Build 2)) soll also in einer Variable so umgeändert werden, dass sie gleich aufgebaut ist, wie Ausgabe zwei (12.99.0002).
Mein momentander Gedanke ist, die Zeile einzulesen, nach Build zu suchen, die erste Zahl danach einzulesen und schauen, ob eine weitere folgt oder nicht. Wenn nein, dass fülle mit 3x0, ansonsten lies auch die nächste Zahl ein und fülle mit 2x0 auf. Was dann rauskommt beispielsweise in temp3 schreiben und mit temp2 vergleichen.
Leider komme ich momentan selbst nicht auf die Lösung, deshalb würde ich mich über Hilfe sehr freuen.
Grüße,