Frage allgemein zu RegExp und match against
Hay alle zusammen
Ich mache mir ne Suche für Daten die in einer Mysql datenbank stehen, die daten sind in mehreren sprachen unter anderem auch in arabisch türkisch chinesisch etc das alles realisiere ich mir mit preg_match_all und bastel mir je nach treffern die sql abfrage zusammen. Ich arbeite mit UTF-8 codierten texten die in der mysql Datenbank stehen. Soweit so gut funktioniert auch alles schonmal ganz gut. Jetzt hab ich zwei sachen die mich stören und ich weiss nicht woran es liegt. Mein RegExp für eine normale Suchwörter Getrennte abfrage PHP-Code:
meine zweite Frage: wenn man Wörter hat mit einem ' drin wird nicht gematcht obwohl das wort genauso in der Datenbank im Text vorkommt BSP: Suche nach Peter's Auto Text in datenbank ... Peter's Auto ist rot... ergibt keine Treffer. In der Datenbank steht der Eintrag genauso ohne \ slashes Woran liegt das? Liebe Grüsse Said |
AW: Frage allgemein zu RegExp und match against
keiner ne idee? abfragen tu ich mit match against und fulltext
|
AW: Frage allgemein zu RegExp und match against
Hi saidbuchari,
Zu deiner ersten Frage: Das liegt an den MySQL-Collation-Set. Lese dir dazu mal das hier durch: http://dev.mysql.com/doc/refman/5.1/...code-sets.html Zu deiner 2. Frage: Das liegt auch an MySQL, da du ja mit fts suchst wirst du evtl solche Sonderzeichen nicht finden, da MySQL die nicht mit fts indiziert. Evtl schafft "IN BOOLEAN MODE" da Abhilfe. |
AW: Frage allgemein zu RegExp und match against
Danke für deinen Ansatz.
Also meine EInträge in der Datenbank sind in utf8_unicode_ci Es sind ganze Bücher in der Datenbank die ich so nach udn nach importiert habe. Das wär echt schlecht wenn das nicht geht. mh gibt es ne möglichkeit das das trotzdem geht vielleicht das ich die bücher einfach nochmal importiere und dann mit einem addslashes beim eintragen? oder das ' ersetzen lassen durch \' aber eigentlich kanns daran nicht liegen hab ja uch alles per mysql_real_escape_strings in die datenbank eingetragen da müsste er das ja automatisch machen und die suche läuft auh über mysql_real_escape_strings. IN BOOLEAN MODE ist aktiviert mh was muss ich einstellen damit ö auch nur auf ö matcht und ich ' in den texten benutzen kann? |
AW: Frage allgemein zu RegExp und match against
Ob deine Texte richtig in der Db stehen siehst du ja, wenn du sie abruft.
Zitat:
Kannst du die SQL's (und den PHP-Teil) mal posten ? |
Alle Zeitangaben in WEZ +2. Es ist jetzt 19:48:23 Uhr. |
Powered by vBulletin® Version 3.8.3 (Deutsch)
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.