Entwickler-Ecke

Basistechnologien - beliebiges Zeichen in String


DrHoas - Mi 16.06.10 14:30
Titel: beliebiges Zeichen in String
Hallo,

ich durchsuche einen String nach
int Stelle = DateiString.IndexOf("<td class=\"be\">4</td>");

Anstelle der vier kann aber auch was anderes stehen (maximal zweistellig). Wie kann ich dann nach dem String suchen? Ich hab's schon mit * und ein paar anderen Dingen probiert... Ohne Erfolg.

Danke

Philipp


bakachan - Mi 16.06.10 14:44

Such doch einfach den Anfang "<td class=\"be\">".
Wenn dir das nciht reicht kannst du auch RegEx verwenden und dir dafür ein entsprechendes Muster basteln.


danielf - Mi 16.06.10 14:49

Hallo,

für solche geschichten eignen sich auch Reguläre Ausdrücke sehr gut. Da kannst du ein Pattern definieren welches eben genau dies definieren kann. (Die Implementierung in .NET heißt Regex).

Das Pattern könnte so aussehen: "<td class=\"be\">{\d{2}</td>"

Gruß


DrHoas - Mi 16.06.10 15:49

ich bekomme eine nichterkannte Escapesequenz beim d. Irgendwo fehlt aber auch eine geschweifte Klammer, oder?

Philipp


danielf - Mi 16.06.10 15:56

Ja, mein Ausdruck ist nicht ganz richtig: "<td class=\"be\">\\d{2}</td>" so sollte er passender sein.

Allerdings rate ich dir zu benannten Gruppen: "<td class=\"be\">(?<classValue>\\d{2})</td>"

Damit kannst du dann über match.Groups["classValue"].Value darauf zugreifen.


bakachan - Mi 16.06.10 15:58


C#-Quelltext
1:
<td class="be">(?<value>\d{1,2})</td>                    

Escapen darfst selbst noch ^^