Kannst Du nicht einfach die Ergebnisabfrage negieren? Bei ner Lösung über ne regexp steh ich im Moment auch auf dem Schlauch...![]()
Wie kann ich folgenden Ausdruck negieren, also jeder String
der nicht .gif oder .jpg am Ende enthält soll matchen.
RegEx: "\.(gif|jpg)$"
Mein Ansatz "[^.(gif|jpg)]$" funktioniert leider nicht....
Kannst Du nicht einfach die Ergebnisabfrage negieren? Bei ner Lösung über ne regexp steh ich im Moment auch auf dem Schlauch...![]()
Gruß, der Michl
* * * if you want them to RTFM, make a better FM! * * *
Danke erst mal für den Versuch!
Ergebnisabfrage negieren ging, was ich nicht dachte, da es ein SQL Befehl war.
Der Vollständigkeit halber:
"SELECT DISTINCT col_name FROM table_name WHERE col_name NOT REGEXP '\.(gif|jpg)$'"
funktioniert.
Ich hab das alles einmal überflogen....aber ich muss gestehn: so ganz leuchtet mir das noch nicht ein.
Vielleicht würde mir ein Simples Beispiel helfen:
bei einem text wie dem "<text>" den string umwandeln auf
"[text]"
So simpel ist dein Beispiel gar nicht - zumindest nicht in einer regexp - da Du verschiedene Ersatzzeichen ( das [ und das ] hast....
Machen wir's simpel und teilen es in 2 regexp auf:
$Zeile = preg_replace( "/</", "[", $Zeile ); ersetzt die < durch die [
$Zeile = preg_replace( "/>/", "]", $Zeile ); ersetzt die > durch die ]
Für die kompliziertere Variante in einer regexp müssen wir etwas tiefer in die Trickkiste greifen. Wie man sich vielleicht erinnert, kann ich die Treffer mittels $1, $2 usw weiterverwerten. Der Trick ist nun, daß ich mir ein assoziatives Array mit den Fundstücken und den dazu passenden Ersatzzeichen anlege:
$Ersatz["<"] = "[";
$Ersatz[">"] = "]";
Dieses Array benutze ich nur als Ersetz-Variable, in dem ich das "Fundstück" als Index angebe:
$Zeile = preg_replace( "/([<>])/", $Ersatz[$1], $Zeile );
Jetzt brauch aber mal kurz die Hilfe der PHP-Profs: ersetzt preg_replace automatisch alle Pattern oder muss noch ein Pattern-Modifier angegeben werden? Hab da jetzt nix zu gefunden...
PS: Getestet hab ich's nur unter Perl - ich hoffe mal, das ich meine rudimentären PHP-Kentnisse richtig umgesetzt habe....![]()
Gruß, der Michl
* * * if you want them to RTFM, make a better FM! * * *
http://de.php.net/manual/de/function.preg-replace.php <-- steht ganz oben... limit..
Gruss
Jan
Merci- dann sollte das ja so stimmen...hoffe ich mal
![]()
Gruß, der Michl
* * * if you want them to RTFM, make a better FM! * * *
wenn man öfters mehr oder minder diffizile regexpe zusammenlöten muss, ist diese freeware ziemlich hilfreich.
für windows kann man das fertig gekochte binary nutzen, alle anderen OS können (sofern TCL installiert ist) das TCL-Script nutzen.
p.s. zum zusammenbasteln von SQL-statements gibt es diese (für den privateinsatz kostenlose) java basierte appplication.
vielleicht findet jemand für diese anwendungen verwendung
میں کانچ کھا سکتا ہوں اور مجھے تکلیف نہیں ہوتی.
நான் கண்ணாடி சாப்பிடுவேன், அதனால் எனக்கு ஒரு கேடும் வராது
Dieses Visual REGEXP sieht echt nützlich aus... leider läuft das gekochte Binary bei mir überhauptnicht... also ich lad das Teil runter, klicks doppelt an und es passiert garnischts! ...kann das wer nachvollziehen? Oder stimmt irgendwas bei mir nicht? Ist das das eigentliche Programm, oder mehr sowas wie ein ZIP als Exe darstellt? Falls ja... dann wäre es nett, wenn mir jemand den Inhalt schicken kann (jan@traum-projekt.com)!
Danke und Gruss
Jan
Geht bei mir auch nicht... hab XP drauf.
komischerweise funktioniert das binary bei meinem rechner (w2k sp2) auch nicht.
ist mir dummerweise nur noch nicht aufgefallen, da ich die TCL-Script-Variante benutze.
so ein schei$%%$, da will man mal was empfehlen und dann funztz das nicht. Scheiss vorführeffekt, grrrrrrrr...
میں کانچ کھا سکتا ہوں اور مجھے تکلیف نہیں ہوتی.
நான் கண்ணாடி சாப்பிடுவேன், அதனால் எனக்கு ஒரு கேடும் வராது
Na macht nix. Wir lieben dich trotzdem![]()
Hm den Links gibts leider nicht mehr, hast du´s schon runtergeladen oder kennst du einen neuen linK?Original geschrieben von #!/usr/bin/beer
[B]wenn man öfters mehr oder minder diffizile regexpe zusammenlöten muss, ist diese freeware ziemlich hilfreich.
Gruß
Tobias
Sag einem Klugen einen Fehler, er wird erfreut und dankbar sein.
Ein Dummer sieht dich nur als Quäler und schnappt sofort beleidigt ein.
[Karl Heinz Söhler]
Da war'n Tippfehler drin - hier die korrekte:
http://laurent.riesterer.free.fr/regexp/
Gruß, der Michl
* * * if you want them to RTFM, make a better FM! * * *
Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)