Von: Tobias Rohde
Da meine Lösung klein genug ist, poste ich sie trotzdem mal hier rein: function outputStringPositionsFunction2($longText, $searchTexts) { $count = count($searchTexts); for ($i=0; $i <$count; $i++) {...
View ArticleVon: Stefan
Hier eine Loesung mit Regulaeren Ausdruecken. Kein Geschwindigkeitswunder, aber als Alternative nutzbar: function outputNewStringPositionsFunction($longText, $searchTexts) { foreach ($searchTexts as...
View ArticleVon: Rodney Rehm
Moin moin, geschwindigkeitstechnisch auch keine Verbesserung: Gist Dennoch eine kurze Erklärung zum relativ langen code: Manche “Suchworte” tauchen doppelt auf, die verbleibenden sind größtenteils...
View ArticleVon: TimWolla
Meine Lösung ist zwar nicht die schnellste, sollte aber von den Parametern und Rückgabewerten komplett kompatibel zu strpos() sein: https://gist.github.com/2413848
View ArticleVon: Buegelbeatz
Mein Snippet läuft erstaunlicherweise auch scneller als die strpos-Variante: function outputStringPositionsFunctionNew2( &$longText, &$searchTexts){ foreach ($searchTexts as $searchText){...
View ArticleVon: Buegelbeatz
..und noch eine kleine Verbesserung (seh gerade sieht ähnlich aus wie die Lösung von Stefan): function outputStringPositionsFunctionNew2($longText, $searchTexts){ foreach ($searchTexts as $searchText){...
View ArticleVon: Michael Kliewe
explode(), preg_match(), alles ziemlich coole Ideen! Ich glaube meine erste Idee im Kopf war es die Zeichenketten Zeichen für Zeichen (mittels $searchText[$i]) zu durchlaufen und dann nach matches zu...
View ArticleVon: Andre
Die vermutlich bisher langsamste Lösung: https://gist.github.com/2463986. Der Ansatz beruht auf Tries (als Arrays kodiert) und der Iteration über den zu durchsuchenden String. Prinzipiell wird bei...
View ArticleVon: Rodney Rehm
Nicht, dass ich das implementiert hätte, aber <a href="http://blog.avadis-ngs.com/2012/04/elegant-exact-string-match-using-bwt-2/" rel="nofollow">BWT</a> könnte interessant sein…
View ArticleVon: Steffen
Ich bin spät dran, aber genau für diesen Fall (viele Needles, Preprocessing der Needles erlaubt) gibt es den Aho-Corasick-Algorithmus:...
View Article