Hallo hallo,
ich hab da ein kleines Problem, ich habe bisher mit Regex nur in Php
gearbeitet. Jetzt möchte ich das in C# ebenso.
Ich häng euch hier mal den Text an um den es geht (als Dateianhang)
Hierbei handelt es sich um eine Mitgliederliste eines Browsergames.
Nun brauch ich immer die Punkte und den dazugehörigen Spieler.
In Php kein Problem:
[php]
$preg = preg_match_all("/[0-9]{1,2}.[0-9]{3}.[0-9]{3}/", $mitgliederliste_plain, $points);
$preg = preg_match_all("/[0-9]{1,2} [a-zA-Z0-9]{1,20} /", $mitgliederliste_plain, $names);
$new_names = array();
foreach($names as $name_a)
{
foreach($name_a as $name)
{
$new_names[] = preg_replace("/[0-9]{1,2} /", "", $name) ."<br>";
}
}
[/php]
Und schon hab ich 2 Arrays wo all meine Infos gespeichert sind.
Das Selbe brauche ich wie oben schon erwähnt in C#.
Ich verstehe aber Regex in C# glaub schon falsch...
mein Ansatz war:
public string match_points()
{
Match m = Regex.Match("[0-9]{1,2}.[0-9]{3}.[0-9]{3}", textBox1.Text);
return m.ToString();
}
Und das schon X-Mal umgeschrieben usw. aber ich raffs echt nicht.
Ich wäre euch seeehr dankbar für die Hilfe.
Mfg Heavy
PS: Mit dem Regex-Lab bekomme ich die Punkte ausgelesen ... aber wie in C# direkt
Hallo heavyfan,
bitte schildere hier kurz deine Lösung, damit andere User, die das gleiche Problem haben, aus diesem Thread einen Lösungsansatz finden können. Danke!
m0rius
Mein Blog: blog.mariusschulz.com
Hochwertige Malerarbeiten in Magdeburg und Umgebung: M'Decor, Ihr Maler für Magdeburg
Okay, hatte ich voll vergessen
Nunja bei den Punkten war es einfach .. einfach eine Matchcollection erstellen
MatchCollection mc = Regex.Matches(textBox1.Text, "[0-9]{1,2}.[0-9]{3}.[0-9]{3}", RegexOptions.IgnoreCase | RegexOptions.Compiled);
// Ich habe das zum Test noch in die TextBox geschrieben:
foreach (Match m in mc)
{
textBox1.Text += m + "\r\n";
}
Und bei den Usern wars auch so.
MfG