Rätsellösen: Finden aller Wörter in einem größeren Wort in PHP

Ich habe also eine Datenbank mit Wörtern zwischen 3 und 20 Zeichen. Ich möchte etwas in PHP codieren, das alle kleineren Wörter findet, die in einem größeren Wort enthalten sind. Zum Beispiel gibt es im Wort "nach innen" die Wörter "Regen", "gewinnen", "loswerden" usw.

Zuerst dachte ich darüber nach, ein Feld zu den Words-Tabellen hinzuzufügen (Words3 bis Words20, was die Anzahl der Buchstaben in den Wörtern angibt), so etwas wie "LetterCount" ... zum Beispiel würde "Rally" als 1000000000000200000100000010: 1-Instanzen von dargestellt den Buchstaben A, 0 Instanzen des Buchstabens B, ... 2 Instanzen des Buchstabens L usw. Durchlaufen Sie dann alle Wörter in jeder Tabelle (oder eine Tabelle, wenn die Ziellänge der gefundenen Wörter angegeben wurde) und vergleichen Sie die LetterCount jedes Wortes zum LetterCount des Quellwortes ("nach innen" im obigen Beispiel).

Aber dann fing ich an zu überlegen, dass dies sowohl die MySQL-Datenbank als auch das PHP-Skript überlasten würde, indem ich die Buchstabenanzahl jedes einzelnen Wortes aufrief und jede einzelne Ziffer mit der des Quellworts verglich.

Gibt es eine einfachere, vielleicht intuitivere Möglichkeit, dies zu tun? Ich bin offen für gespeicherte Prozeduren, wenn es in irgendeiner Weise mit Overhead helfen wird. Nur einige Vorschläge wären sehr dankbar. Vielen Dank!

Antworten auf die Frage(1)

Ihre Antwort auf die Frage