Anzeige:
Ergebnis 1 bis 5 von 5

Thema: Suche regex

  1. #1
    Registrierter Benutzer
    Registriert seit
    22.07.2001
    Ort
    Böblingen
    Beiträge
    69

    Suche regex

    Hallo Leute,

    ich suche eine regex die mir die optionen aus einem select tag heraussucht.
    Beispiel:
    Code:
    <select>
    <option>hallo1</option>
    <option>hallo2</option>
    <option>hallo3</option>
    </select>
    Aber auch das findet:
    Code:
    <select>
    <option>hallo1
    <option>hallo2
    <option>hallo3
    </select>
    Ich habe bisher das hier geschrieben:
    Code:
    !<option.*?>(.*?)(<\/option>)!i
    Das geht aber nur beim ersten Fall.
    Hab grad keine Idee wie ich den zweiten Fall auch abdecken kann.
    Sind regex experten hier? :-)
    Sony Vaio Laptop mit 2,8 Gig Prozessor
    Kubuntu "Feisty Fawn"
    www.lostlabyrinth.com

  2. #2
    Registrierter Benutzer Avatar von BLUESCREEN3D
    Registriert seit
    08.11.2002
    Beiträge
    665
    Zitat Zitat von Brujah Beitrag anzeigen
    Code:
    !<option.*?>(.*?)(<\/option>)!i
    Die beiden *? sind quatsch - da kannst du die ? weglassen.
    Damit der zweite Fall funktioniert, fehlt nur ein ? am Ende, damit das </option> optional wird:
    Code:
    !<option.*>(.*)(<\/option>)?!i

  3. #3
    Registrierter Benutzer
    Registriert seit
    22.07.2001
    Ort
    Böblingen
    Beiträge
    69
    Hast recht.
    Das hat jetzt funktioniert:

    Code:
    !<option.*?>(.*)(</option>)?!i
    Danke.
    Sony Vaio Laptop mit 2,8 Gig Prozessor
    Kubuntu "Feisty Fawn"
    www.lostlabyrinth.com

  4. #4
    Registrierter Benutzer
    Registriert seit
    14.01.2002
    Beiträge
    657
    Zitat Zitat von Brujah Beitrag anzeigen
    Hallo Leute,

    ich suche eine regex die mir die optionen aus einem select tag heraussucht.
    Beispiel:
    Code:
    <select>
    <option>hallo1</option>
    <option>hallo2</option>
    <option>hallo3</option>
    </select>
    Aber auch das findet:
    Code:
    <select>
    <option>hallo1
    <option>hallo2
    <option>hallo3
    </select>
    Ich habe bisher das hier geschrieben:
    Code:
    !<option.*?>(.*?)(<\/option>)!i
    Das geht aber nur beim ersten Fall.
    Hab grad keine Idee wie ich den zweiten Fall auch abdecken kann.
    Sind regex experten hier? :-)
    versuchs mal mit

    Code:
    !<option.*?>(.*?)(<\/option>)?!i

  5. #5
    Registrierter Benutzer
    Registriert seit
    22.07.2001
    Ort
    Böblingen
    Beiträge
    69
    Ich hatte heute noch eine bessere (da einfachere) Idee.
    Jetzt mache ich es so:

    Code:
    !<option.*?>(.*?)(?:<)?!i
    Das funktioniert in allen Fällen :-)
    Geändert von Brujah (17-09-2007 um 12:28 Uhr)
    Sony Vaio Laptop mit 2,8 Gig Prozessor
    Kubuntu "Feisty Fawn"
    www.lostlabyrinth.com

Lesezeichen

Berechtigungen

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