Mailinglisten-Archive |
Reinhold Jordan wrote: > Hallo, > >>> Dies hier schon http://www.uris.de/test/regex12.php >> leider nur unter Windoof, >> unter Unix/Linux werden die Umlaute ausgeklammert, >> obwohl sie im RegEx stehen. Sehr eigenartig ... :-( > > hängt immer vom verwendeten Zeichensatz ab. Das solltest > Du aber wissen Nix da. Haupstache der Zeichensatz ist immer gleich. Ich hoffe nicht, dass der array $IN in dem script in einem anderen Zeichensatz geschrieben ist, als das $pattern :-D. Selbst bei multibyte Zeichensätzen ist der Zeichensatz egal, da der String am Ende nur per Musterreferenz kopiert wird. > > Wenn ich das probiere mit einem unter Linux erzeugten Script geht > das auch unter Linux - und vermutlich unter Windows nicht... Ich hoffe du schreibst deine Skripte nicht alle 2x... Ist euch eigentlich mal aufgefallen, dass das Umlautproblem bei den Haustüren (erstes Ergebnis) nicht auftritt? Übrigens: Modifiziere ich die entsprechende Zeile so: 'Das sdfÜÖÄßhausdach ist ein künstliches Testobjekt.', Funktionier der regex auch. Das interessante ist, dass PCRE tatsächlich bei \b nur ascii-chars unterstüzt: http://www.regular-expressions.info/refflavors.html (Wusste ich bis gerade aber auch nicht). Eine bessere Lösung wäre also: $pattern='/(?<=[^a-z0-9üöäÜÖÄß]|\A)[a-z0-9üöäÜÖÄß]*'.$such.'[a-z0-9üöäÜÖÄß]*(?=[^a-z0-9üöäÜÖÄß]|\Z)/i'; Tut mir Leid, dass ich euch mit den Wortgrenzen etwas in die Irre geführt habe :-(. > > Gruß, Reinhold Yannik
php::bar PHP Wiki - Listenarchive