Suche in Zeichenkette

Hello,

folgendes Problem hätt ich gerne gelöst, bekomme aber zu keinem vernünftigen Ergebnis. Auch die Beschreibung hilft mir hier leider nicht weiter.

In meiner Datenbank hab ich 7 verschiedene Felder, die Hersteller, Brennweite von-bis, Blende von-bis, Typ und Motor eines Objektivs für eine Kamera beinhalten. Nun habe ich mir von verschiedenen Händlern die Preislisten in Excel gespeichert. Dort stehen die einzelnen Felder aber als ganzes in einem Feld. Ich möchte nun nur mehr nachsehen, wie viele meiner 7 Felder sich mit der Bezeichnung matchen und dachte vereinfacht nur an eine Lösung, wo ich zähle, wie viele Kriterien sich matchen, damit ich sagen kann, der Artikel ist der aus meiner DB.

Der Befehl
preg_match ($hersteller, $artikelbezeichnung)
wird zwar verarbeitet, liefert aber kein Ergebnis. Kann man das Suchmuster überhaupt in einer Variablen abspeichern???

Wär nett, wenn sich jemand meinem Problem annehmen könnte. Bin noch nicht so weit fortgeschritten in PHP :frowning:

lg Chris

Hi,

erstmal wuerde ich das Ganze portieren, sagen wir mal ‚speichern als…‘ Text, Tabstopps getrennt. Dann haste ne Datei, die Du mit Notepad (nicht mit Excel) bearbeiten solltest. Du markierst einen Tabstopp, kopierst ihn, gehst in ‚Suchen und Ersetzen‘ und ersetzt ihn und alle anderen durch ein Zeichen, was nirgendwo vorkommt, z. B. Rauten (#). Jetzt brauchste nur noch mit PHP Schleifen zu basteln, welche alle Felder durchsuchen:

$liste_gesamt = file(„camera.rsv“);//datei einlesen
for($x=0;$x";//ausgabe des Suchergebnisses
}
}

P.S. Ich habs nicht getestet, aber es muesste laufen. Ne aehnliche Geschichte habe ich unter http://www.computerjockey.de/buecher/ programmiert. Wenn Du noch Fragen hast, mail me!

cu,
cjmatsel

Hello CJ MatSel,

Danke :smile: - Dein Lösungsansatz ist gut und für eine Liste mit allen Canon Objektiven, die ich checken möchte, hab ich ein Script geschrieben, das mir die Daten in MySQL abgespeichert. (allerdings mit CSV und dem Befehl fgetcsv($file, $Size, $delimiter)

Jetzt hab ich aber das Problem, daß jeder Anbieter seine Daten in einer anderen Bezeichnung bzw. anderen Reihenfolge darstellt. Da ich die Listen öfters und von verschiedenen Händlern einlesen und abgleichen möchte (wegen der Preise), hätt ich dadurch die Mega Arbeit - die will ich mir eben ersparen, indem ich in der Artikelbezeichnungsspalte nach meinen 7 Kriterien suche.

Hast du mit preg_match schon gearbeitet?

lg + thanx
Chris

Noe, hab ich noch nicht. Scheint aber nicht so schwierig zu sein…