Wenn ich eine Zeichenfolge übergebe (Verstring == "Name.1.19.5"), wird die Version zurückgegeben, da ich Currentver [0] ignoriere. Wenn ich Verstring == "1.19.5" übergeben möchte.Versionsnummer aus String extrahieren (zB: "ver.1.9.0")
ich meine, ich werde in beiden Formaten mit Versionsnamen (vername) oder nur Version (1.19.5)
public VerInfo(string verString)
{
string[] currentVer;
if (versionString.Contains("."))
currentVer= versionString.Split(".".ToCharArray());
else
currentVer= versionString.Split(":".ToCharArray());
a= Convert.ToByte(currentVer[1]);
b= Convert.ToByte(currentVer[2]);
c= Convert.ToByte(currentVer[3]);
}
Wie können die Zahlen variieren? Ist es immer 3? Getrennt von: und. ? –
Sie brauchen Regex nicht. Ersetze den Doppelpunkt mit Punkten und nimm einen Teilstring von Index 5 bis zum Ende –
[Einige Leute, wenn sie mit einem Problem konfrontiert sind, denken "Ich weiß, ich werde reguläre Ausdrücke verwenden." Jetzt haben sie zwei Probleme.] (Https://blog.codinghorror.com/regular-expressions-now-you-have-two-problems/) – JDB