Variablen String sauber zerlegen

PhoenixDH

Erfahrenes Mitglied
Hallo zusammen,

ich habe einen String der folgendermaßen aufgebaut ist:
UG-DC-TESTER-100240.1-ADMIN

Der rote Bereich ist bei jedem String der gleiche, der gelbe ist optional und der Grüne hat eine Variable Länge, d.h. er hat auch mal je nachdem deine Stelle mehr.

Wie bekomme ich den String jetzt am besten ausgelesen das ich nur den Bereich 100240.1 oder 100240.10 bekomme.

Vielen Dank euch!
 
Hallo,

so vielleicht?

C#:
string vorgabe = "UG-DC-TESTER-100240.1-ADMIN";
string[] feld = vorgabe.Split('-');
string deinWert = feld[3];
 
Danke, hät so funktioniert, ich hab aber den falschen Input mitgegeben, der richtige wäre:
CN=UG-DC-TESTER-100240.1-ADMIN,OU=1-2,ou=3-4,ou=...

Da kommt also noch ein bisschen was danach, was auch flexibel ist, fängt der so von vorne an?

Denn für den Fall mit -ADMIN klappt das, für einen ohne da nicht, da hat er noch ein Stück OU hintendran.
 
Zuletzt bearbeitet:
Hallo PhoenixDH,

ist die Struktur schon fest verankert? Ansonsten würde ich dir empfehlen einfach vor dem OU auch ein - zu schreiben, da dies wohl die einfachste und schnellste Variante wäre. Ansonsten kannst du noch überprüfen ob der Substring einen Buchstaben enthält und dann immer das letzte Zeichen abschneiden, bis keiner mehr vorhanden ist.

Das ganze könnte ca. so realisiert werden:

Code:
string vorgabe = "UG-DC-TESTER-100240.1OU=1-2";
string[] feld = vorgabe.Split('-');
string deinWert = feld[3];
while (!System.Text.RegularExpressions.Regex.IsMatch(deinWert, @"^[0-9.]+$"))
{
    deinWert = deinWert.Substring(0, deinWert.Length - 1);
}

Gruß
Hale
 
Es sieht für mich so aus, dass es Zuweisungen der Form NAME=WERT gibt, und diese dann durch Kommata getrennt sind, also
Code:
NAME=WERT,NAME=WERT,NAME=WERT,NAME=WERT,...
Das heißt, du verwendest die Split-Methode zuerst um alle Teilstrings der Form NAME=WERT zu extrahieren (getrennt durch Komma) und dann wendest du die Split-Methode noch mal an um WERT aus NAME=WERT zu extrahieren (getrennt durch Ist-Gleich-Zeichen) und dann wendest du die Split-Methode ein letztes Mal auf den extrahierten Wert an mit dem Bindestrich als Trennzeichen.
 
Danke! Ich schau mir das mal an.

Ich bin jetzt momentan einfach hingegangen und hab ne Mischung aus "-" und ","
 

Neue Beiträge

Zurück