none
Wort aus Regex-Ergebnis entfernen + flackernde Tabs (TabControl) RRS feed

  • Frage

  • Moin,

    ich hab ein kleines Problem mit Regex.

    Und zwar durchsuche ich mir Regex einen Quelltext nach z.B. "uri=mgid:uma:video:gameone.de:112234". Die letzten 6 Zahlen sind leider immer random, ich kann also nicht NUR nach einer 6-stelligen Zahl suchen. Da ich aber nur diese 6 Zahlen benötige, muss ich irgendwie den Rest ("uri=mgid:uma:video:gameone.de:") entfernen.

     

    Bis jetzt hab ich es so versucht, leider ergebnislos (wahrscheinlich wieder irgendein blöder Denkfehler von mir...)

     

                string replaceTVTab2 = "uri=mgid:uma:video:gameone.de:";
                string emptyTVTab2 = "";
    
                WebClient xmlCodeTab2 = new WebClient();
                string xmlCodeStringTab2 = xmlCodeTab2.DownloadString("http://www.gameone.de/api/mrss/" + tbVideoIDTab2.Text);
    
                Regex exp_TVPartsTab2 = new Regex("uri=mgid:uma:video:gameone.de:+.{6}");
    
                MatchCollection multiTvPartsTab2 = exp_TVPartsTab2.Matches(xmlCodeStringTab2);
    
                for (int i = 0; i < multiTvPartsTab2.Count; i++)
                {
                    Match m = multiTvPartsTab2[i];
                    Convert.ToString(multiTvPartsTab2[i].Value);
                    Regex.Replace(multiTvPartsTab2[i].Value, replaceTVTab2, emptyTVTab2);
                    rtbTVPartsTab2.AppendText(m + "\r");
                }
    


    Mein zweites "Problem": Ich benutze in meinem Programm TabControls und hab leider festgestellt, dass die jeweiligen Tabs ziemlich flackern, wenn ich mit der Maus über diese Tabs fahre. Gibt es da eine Möglichkeit das zu verhindern?

     

    Danke schon mal im Voraus! 

     

    Samstag, 21. Januar 2012 19:34

Antworten

  • Hallo Fabzen,

    würde das hier nicht Ihr Problem lösen:

    string s = "uri=mgid:uma:video:gameone.de:112234";
    string[] splittedString = s.Split(':');
    string numbers = splittedString.Last();
    	
    

    Die Methode Split(':') trennt den String an dem gewünschten Zeichen auf und erzeugt ein Array. Last() liefert dann das gewünschte Element. Unter [1] wird eine Lösung für das Problem mit dem Flackern angeboten.

    [1] http://bytes.com/topic/c-sharp/answers/746119-tabcontrol-flicker-issue

     

    Viele Grüße,
    Thomas Fröhle
    MSDN Hotline für MSDN Online Deutschland

    Disclaimer:
    Bitte haben Sie Verständnis dafür, dass wir hier auf Rückfragen gar nicht oder nur sehr zeitverzögert antworten können.
    Bitte nutzen Sie für Rückfragen oder neue Fragen den telefonischen Weg über die MSDN Hotline: http://www.msdn-online.de/Hotline
    MSDN Hotline: Schnelle & kompetente Hilfe für Entwickler: kostenfrei!

    Es gelten für die MSDN Hotline und dieses Posting diese Nutzungsbedingungen, Hinweise zu Markenzeichen Informationen zur Datensicherheit sowie die gesonderten Nutzungsbedingungen für die MSDN Hotline.


    Dienstag, 24. Januar 2012 12:39
  • Hallo, ich hätte es so gemacht:
    string s = "uri=mgid:uma:video:gameone.de:112234";
    string t = s.SubString(s.Length-7); //Da das 1. Zeichen 0 ist, somit 7 und nicht 6
    


    Dies basiert natürlich darauf das die letzten 6 Zeichen die entsprechenden Zahlen sind, ansonsten finde ich Split(':') aber auch super.

    Das Flackern kommt einfach durch deine doch recht intensive überprüfung.


    Koopakiller - http://koopakiller.ko.ohost.de/
    Montag, 30. Januar 2012 21:12

Alle Antworten