Ergebnis 1 bis 7 von 7
  1. #1
    Milw0rm Avatar von novedad
    Registriert seit
    12.05.2010
    Beiträge
    589

    Standard [VB 2008] URL in String zerlegen

    Heho

    Habe ein Problem

    Und zwar möchte ich folgende URL gern Zerlegen:

    Code:
    http://ups.surveyrouter.com/SurveyTrafficUI/STMU
    /Page.aspx?pgtid=19&bid=18&cid=7&c=CD8046&ids=571_5956953250b17f2010b3cfa710c34456&utcoffset=-1
    Dieser Wert ändert sich immer:

    Code:
    http://ups.surveyrouter.com/SurveyTrafficUI/STMUI/Page.aspx?pgtid=19&bid=18&cid=7&c=CD8046&ids=571_5956953250b17f2010b3cfa710c34456&utcoffset=-1
    Und dieser Wert muss auf 23 geändert werden:

    Code:
    http://ups.surveyrouter.com/SurveyTrafficUI/STMUI/Page.aspx?pgtid=19&bid=18&cid=7&c=CD8046&ids=571_5956953250b17f2010b3cfa710c34456&utcoffset=-1
    Also müsste die URL so zerlegt werden:

    Code:
    http://ups.surveyrouter.com/SurveyTrafficUI/STMUI/Page.aspx?pgtid=/19/&bid=18&cid=7&c=CD8046&ids=571_/5956953250b17f2010b3cfa710c34456&utcoffset=-1
    Wie stelle ich das am besten an?

    Hab gegoogelt und rausgefunden, dass das mit Split() machbar ist, aber das ich dazu auch ein Trennzeichen benötige, wo die URL getrennt wird.

    Bin aber daraus nicht so richtig schlau geworden :o

    Bitte um Hilfe

    MfG novedad
    Seitdem ich perfekt bin hält sich meine Arroganz in Grenzen



  2. #2

    Registriert seit
    17.06.2009
    Beiträge
    559

    Standard

    Mit System.Uri kannst du die URL in die einzelnen Bestandteile zerlegen.
    Dann brauchst du nur noch den Pfad mit dem Trennzeichen & splitten, die Werte ändern und die URL wieder zusammensetzen.

    Oder einfach ein Regex.Replace anwenden.
    Geändert von inout (15.12.2010 um 21:14 Uhr)

  3. #3
    Sobig Wurm Avatar von BlackHook
    Registriert seit
    13.03.2009
    Beiträge
    219

    Standard

    RegEx ist die Lösung.
    Wenn du deine Frage so gestellt hättest dass ich es verstehe , hätte ich es für dich eben als code gepostet, leider verstehe ich deine Frage nicht, bzw kann ich nicht erkennen welche Werte sich ändern, du hast einfach die gleiche Zeile paar Mal kopiert, eine hat ein / mehr oder weniger, mehr sehe ich nicht.

    Richtige Fragestellung --> richtige Antwort.

    Du kannst mir eine PN schicken, mit verbesserte Fragestellung.
    RegEx ist nicht schwer, schau bei Wiki nach, ist ganz gut beschrieben.

  4. #4
    CIH-Virus Avatar von krusty
    Registriert seit
    12.10.2008
    Beiträge
    445

    Standard

    uuuups, hab mich ein wenig verlesen und was falsches gepostet, vlt hilft dir der Quelltext trozdem.

    Geändert von krusty (15.12.2010 um 21:22 Uhr)

  5. #5
    Sobig Wurm Avatar von BlackHook
    Registriert seit
    13.03.2009
    Beiträge
    219

    Standard

    Mit Split musst du immer einen Trennen nennen, bei RegEx ist es viel komfortabler.
    Da kannst du fangen was du willst und wie du willst.
    An Jeder Stelle und jeden Wert mit beliebiger Länge.

  6. #6

    Registriert seit
    17.06.2009
    Beiträge
    559

    Standard

    Eine mögliche halbwegs saubere Lösung wäre:
    Code:
    url = Regex.Replace(url, "pgtid=\d+", "pgtid=23")

  7. Folgende Benutzer haben sich für diesen Beitrag bedankt:

    novedad (15.12.2010)

  8. #7
    awesomesauce! Avatar von whory
    Registriert seit
    25.10.2010
    Beiträge
    131

    Standard

    bei regex sind nur die pattern das schwrieige... kann dir da ein tut geben

Ähnliche Themen

  1. C# String durchsuchen
    Von Devil589 im Forum .NET Sprachen - Techniken
    Antworten: 13
    Letzter Beitrag: 09.12.2010, 14:47
  2. STL String und cin.get
    Von DoS im Forum C, C++
    Antworten: 3
    Letzter Beitrag: 16.08.2009, 15:06
  3. Vb.net String
    Von CYSER im Forum .NET Sprachen - Techniken
    Antworten: 3
    Letzter Beitrag: 24.03.2009, 10:25
  4. MsN PishingPage zerlegen
    Von littletcom im Forum Sicherheit
    Antworten: 2
    Letzter Beitrag: 25.08.2008, 03:21

Stichworte

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •