preg_match mit 2 Begriffen

Kendoo

Grünschnabel
Hi,
ich stehe gerad vor einem zumindest für mich bisher unlösbaren Problem. Und zwar möchte ich mittels einer Regex prüfen, ob in einem String zwei bestimmte Wortbestandteile vorkommen. Nur wenn beide Wörter, auch als Kombination mit anderen bestandteilen vorkommen, soll true herauskommen.

Ich weiß, dass man mit
PHP:
if(preg_match("/apfel|reif/iu", $suchstring)){
echo "True";
}
else{
echo "False";
}
true bekommen würde, wenn eines dieser Worte vorkommen würde aber ich will ja dass beide vorhanden sein müssen.

Also, ich habe beispielsweise folgende Begriffe:
"apfel"
"reif"
und möchte, dass wenn beide Wörter, aber auch Wortkombinationen wie zum Beispiel "Apfelbaum" und "Frühreif" vorkommen, ich ein True bekomme

ich hoffe man kan mir helfen.

Gruß kendoo
 
Versuchs mal mit:

PHP:
preg_match("/apfel.*reif|reif.*apfel/ui", $suchstring);

Ich möchte (vorsorgend:p) dabei sagen, dass ich in RegEx nich ganz geübt bin
 
Ist da einfaches Suchen nicht schneller?
PHP:
if (stripos($text, "apfel") !== false && stripos($text, "reif") !== false)
{
  // jau
}
 
Ist da einfaches Suchen nicht schneller?
PHP:
if (stripos($text, "apfel") !== false && stripos($text, "reif") !== false)
{
  // jau
}

Ich bedanke mich, das war genau das was ich suchte.

Die andere Lösung ist auch nicht so verkehrt, aber wirkt nicht auf alle möglichen Wortkombinationen, naja da hatte ich mich ja selbst schon Stundenlang dran versucht.

Also nochmal Thx an alle. :)

Greetz kendoo
 
Zurück