Mailinglisten-Archive |
Hallo Michael,
Am 14.06.2004 22:18 Uhr schrieb "Michael Siebert" unter
<fallen at webbuildersnet.de>:
> versuchs doch einfach mal mit:
>
> if (stristr($string, 'suchwort1') !== false &&
> stristr($string, 'suchwort2') !== false)
Ich hatte bewußt nach einer entsprechenden Regex gefragt, da ich diese
zwingend brauche,- in meinem Ansatz.
Grundprinzip der Funktion ist folgendes(stark vereinfacht):
// $toMatch ist ein _GET Array
function parseSearch($toMatch)
{
//Ich hole mir Text aus einem File
$contents = file_get_contents($filename);
// hier kommen verschiedene Bedingungen, anhand derer die $this->searchRegex
gebildet werden soll
if (preg_match('/hassenichgesehen/', $toMatch) {
$this->searchRegex = 'hier die Regex als literal';
...
}
// mit strpos frage ich zwar eine Bedingung ab,- die Regex, die ich später
brauche, muss aber ja auch hier gebildet werden
if (strpos($contents, $toMatch) !== FALSE) {
$this->searchRegex = 'hier die Regex als literal';
}
//die endgültige Regex für das ganze file
if (preg_match_all('/(\[\[.[^\[]+)('.$this->searchRegex.')(.[^\]]+\]\])/i',
$contents, $match) {
durchlaufe verschiedene Schleifen und printe entsprechend...
}
D.h, die Regex muss dieses 'Match, wenn String1 UND String2 im suchstring
vorhanden ist' wiederspiegelen,- oder eben 'nur dann Match, wenn im
Suchstring nicht beide Strings (string1, string2) vorhanden sind.
gruss
Olaf
--
Olaf Gleba | creatics media.systems
http://www.creatics.de | mailto:og at creatics.de
php::bar PHP Wiki - Listenarchive