Autor Beitrag
kostonstyle
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 94



BeitragVerfasst: Do 28.01.10 17:21 
Hallo miteinader
wie kann mit String nach " suchen?
habe folgendes versucht, aber leider gescheitert.
ausblenden C#-Quelltext
1:
int aufrufezeichen = item.IndexOf("/"");					


am besten zeige ich euch, was ich genau möchte
string sieht so aus
ausblenden Quelltext
1:
<printObject ID = "72" type = "textArea">					

nun möchte ich nur ID = "72" auslesen?
string aber auch so aussehen
ausblenden Quelltext
1:
<printObject ID = "2" type = "textArea">					

dann nur ID = "2" ausgelesen werden.

wie mache ich so etwas?

danke kostonstyle
danielf
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 1012
Erhaltene Danke: 24

Windows XP
C#, Visual Studio
BeitragVerfasst: Do 28.01.10 17:25 
An was ist es den gescheitert? Wenn du ein Kompilierfehler bekommst ist es immer sehr nützlich diesen hier anzuzeigen.

Dieses mal ist es noch einfach. Dein Escape Zeichen ist falsch. Es ist nicht / sondern \

Gruß Daniel
danielf
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 1012
Erhaltene Danke: 24

Windows XP
C#, Visual Studio
BeitragVerfasst: Do 28.01.10 17:28 
Dein Edit war aber schnell....

Wenn du etwas parsen willst, hilft dir Reguläre Ausdrücke. Die Implementierung heißt in .NET Regex.

Das Pattern wäre dann
ausblenden C#-Quelltext
1:
string pattern = @"<printObject ID = ""(?<id>\d*)"" type = ""textArea"">";					


Edit: Du solltest keine zwei Fragen in einem Thread verarbeiten.
kostonstyle Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 94



BeitragVerfasst: Do 28.01.10 17:55 
ich möchte den Wert von ID herrauslesen. habe mal foldendes versucht.
ausblenden C#-Quelltext
1:
2:
3:
4:
5:
6:
            int id = item.IndexOf("ID");
            char[] charsToTrim = {'"''\''};
            string id_value = item.Substring((id + 5), 4);
            id_value = id_value.TrimStart(charsToTrim);
            id_value = id_value.TrimEnd(charsToTrim);
            return Convert.ToInt16(id_value.Trim(charsToTrim));

funktioniert fast, ausser der zweit letzte Befehl, und zwar es entfernt Zeichen nicht.
Die Ausgabe sieht so aus nach
ausblenden C#-Quelltext
1:
id_value = id_value.TrimEnd(charsToTrim);					

"1\" "
es sollte \" entfernt werden.

@danielf
Zitat:
Edit: Du solltest keine zwei Fragen in einem Thread verarbeiten.

kommt nicht wieder vor..
danielf
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 1012
Erhaltene Danke: 24

Windows XP
C#, Visual Studio
BeitragVerfasst: Do 28.01.10 18:12 
Hast du mal gelesen, was die Funktion trim macht?
kostonstyle Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 94



BeitragVerfasst: Fr 29.01.10 13:36 
So wie ich es verstanden habe, entfernt es alle Zeichen, die man in char array mitgibt.
Ralf Jansen
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 4708
Erhaltene Danke: 991


VS2010 Pro, VS2012 Pro, VS2013 Pro, VS2015 Pro, Delphi 7 Pro
BeitragVerfasst: Fr 29.01.10 13:56 
Aus der Msdn Hilfe
Zitat:
Entfernt alle führenden und nachgestellten Vorkommen der Zeichen im angegebenen Array aus dem aktuellen String-Objekt.

Man beachte die Einschränkung von ~alle~. Dein zu entfernen Zeichen fällt wahrscheinlich nicht in die Kategorie führenden oder nachgestellt sondern steht mitten im string. Du willst oder musst bestimmt auch Leerzeichen entfernen.