[MySQL 3.23.X] REGEXP aus PLZ String

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • [MySQL 3.23.X] REGEXP aus PLZ String

    Hallo,

    versuche grad nen REGEXP auf ein Query anzuwenden. Allerdings scheint das nen wenig anders zu sein als bei PHP.

    Folgendes möcht ich gerne in MySQL umsetzen:
    PHP-Code:
    <?

    $str = '60311,60313,60314,60316,6500,60318,60320,60322,60323,60325,60326,60327,60329,60385,60386,60388,60389,60431,60433,60435,60437,60439,60486,60487,60488,60489,60528,60529,60549,60594,60596,60598,60599,65929,65931,65933,65934,65936';

    $plz = '659';

    echo preg_match('=.*?' . $plz . '[0-9]{0,3}.*?=',$str);

    ?>
    Hab folgendes in MySQL versucht:
    SELECT plz FROM tabelle WHERE plz REGEXP '.*?659[0-9]{0,3}.*?';

    Leider ohne Erfolg. Fehlermeldung:
    Got error 'repetition-operator operand invalid' from regexp

    Hat jemand einen Tipp für mich? - oder hagelt es gleich Links?




    ~~~~~~~~~~~~~~~~~~~~~~~~
    ADMINS: Bitte Thread löschen
    ~~~~~~~~~~~~~~~~~~~~~~~~
    Zuletzt geändert von Sebastian W; 20.01.2004, 14:52.
    Grüsse,
    Sebastian


    Profil Flex Freelancer
    Twitter twitter.com/flashhilfe
    Web Flash und Flex Community

  • #2
    wieso hast du alle PLZ's in einem string? bzw in der DB in einem feld?

    mache doch einfach ne extra tabelle dafür. dort kannst du auch die orte eintragen und dann auch problemlos mit WHERE arbeiten.
    INFO: Erst suchen, dann posten![color=red] | [/color]MANUAL(s): PHP | MySQL | HTML/JS/CSS[color=red] | [/color]NICE: GNOME Do | TESTS: Gästebuch[color=red] | [/color]IM: Jabber.org |


    Kommentar


    • #3
      .... ist ne vorgegebene DB. Mit der arbeite ich nicht direkt.

      Hab grad die Lösung gefunden:

      SELECT plz FROM tabelle WHERE plz REGEXP '.*[^0-9]659[0-9]{0,3}.*'

      .* scheint bei MySQL nicht gierig zu sein.

      Der Fehler trat wegen dem .*? auf.


      Trotzdem, danke für die schnelle Antwort.


      Nachtrag:
      Bzw:
      SELECT plz FROM tabelle WHERE plz REGEXP '[^0-9]659[0-9]{0,3}'
      Zuletzt geändert von Sebastian W; 20.01.2004, 15:11.
      Grüsse,
      Sebastian


      Profil Flex Freelancer
      Twitter twitter.com/flashhilfe
      Web Flash und Flex Community

      Kommentar

      Lädt...
      X