Regex: ArgumentException?

  • VB.NET

Es gibt 6 Antworten in diesem Thema. Der letzte Beitrag () ist von Lukas.

    Regex: ArgumentException?

    Heyho,

    ichb eschäftige mich jetzt das Erste mal mit RegEx und habe schon jetzt wieder die Lust dran verloren^^

    Ich versuche, aus einem vorher heruntergeladenen Text, genauer gesagt einem Feed mit Nachrichten, die Überschriften auszulesen, um sie anzeigen zu können.

    Hier ist der Code:

    VB.NET-Quellcode

    1. newsallgemein = wc.DownloadString(New Uri("http://news.google.com/news?ned=de&topic=h&output=rss"))
    2. Dim match As Match = Regex.Match(newsallgemein, "\<title>(.*?)\</title>")


    Fehler:
    "\<title>(.*?)\</title>" wird analysiert - Verweis auf den nicht definierten Gruppennamen title.


    Im Klartext: Ich habe keine Ahnung, was mir diese Meldung sagen soll. Ich denke mal der Fehler liegt im jetzt schon verwirrenden Pattern.

    An alle, die sich jetzt beschweren, dass durch diesen Code der Thread einfriert: fu. Das wird alles noch geändert...
    „Was daraus gefolgert werden kann ist, dass jeder intelligentere User sein Geld lieber für Bier ausgibt, um einen schönen Rausch zu haben, und nicht dieses Ranzprodukt.“

    -Auszug aus einer Unterhaltung über das iPhone und dessen Vermarktung.
    warum so umständlich und vorallem mit RegEx? ...
    was liefert der rss feed? XML
    was kann vb.net? XML

    also warum nutzt du nicht das was du bekommst?!

    ps: dein "fu" im letzten absatz ist unnötig und unzivilisiert
    Hier wären aber früher oder später Trollkiddys dahergelaufen gekommen und hätten mich deswegen angemacht.

    Natürlich kann VB auch XML, nur wollte ich auch mal Regex testen. Damit habe ich bisher nie gearbeitet. Daher würde ich, auch wenn ich das jetzt mit XMLReader mache, gerne wissen, wo dort der Fehler lag.
    „Was daraus gefolgert werden kann ist, dass jeder intelligentere User sein Geld lieber für Bier ausgibt, um einen schönen Rausch zu haben, und nicht dieses Ranzprodukt.“

    -Auszug aus einer Unterhaltung über das iPhone und dessen Vermarktung.

    Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von „Lukas“ ()

    VB.NET-Quellcode

    1. Dim reg As Regex = new Regex("\<title\>(?<bez>(.*))\<\/title\>")
    2. reg.Match(newsallgemein).Groups["bez"]


    ohne gewähr das die zugriffe so stimmen, habs nur in c#

    €dit: also problem ist das du die zeichen nicht komplett maskiert hast

    Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von „slice“ ()

    Jetzt gibt er mir nur nochmals den ganzen Feed aus...

    Ich mach's jetzt mit XML, trotzdem danke.
    „Was daraus gefolgert werden kann ist, dass jeder intelligentere User sein Geld lieber für Bier ausgibt, um einen schönen Rausch zu haben, und nicht dieses Ranzprodukt.“

    -Auszug aus einer Unterhaltung über das iPhone und dessen Vermarktung.
    hm kk ... also wie gesagt, zeichen maskieren (sofern nötig, sonderzeichen etc eig immer), mit (?<name>(patter)) definierst du eine gruppe und zum testen deiner patter empfehle ich gskinner.com/RegExr/ :) die seite hat mir schon oft geholfen

    ps: bissi offtopic bez. deiner haltung zu trollen:

    Wiki schrieb:

    Der Begriff Troll wird in der Netzkultur für eine Person verwendet, die mit ihren Beiträgen in Diskussionen oder Foren unter Umständen stark provoziert. Mutmaßliches Ziel des Trolls ist das Stören der ursprünglich an einem Sachthema orientierten Kommunikation und das Erlangen von Aufmerksamkeit.
    Die Seite habe ich auch entdeckt, die wird mir sicherlich noch helfen :)
    „Was daraus gefolgert werden kann ist, dass jeder intelligentere User sein Geld lieber für Bier ausgibt, um einen schönen Rausch zu haben, und nicht dieses Ranzprodukt.“

    -Auszug aus einer Unterhaltung über das iPhone und dessen Vermarktung.