hawkmaster: Regulärer Ausdruck findet zuviel?

Beitrag lesen

Hallo zusammen,

ich durchsuche eine Textdatei nach einem bestimmten Vorkommen.
Ich weiss wie die Zeile anfängt, nämlich immer mit

*OrderDependency:

dann kommt ein Leerzeichen, die gesuchte Zahl, wieder ein Leerzeichen, der gesuchte String (Wort), wieder ein Leerzeichen. Das Ende wie z.b.
*EFFold ist wieder bekannt.
von der Zeile
*OrderDependency: 50.0 AnySetup *EFFold

brauche ich also 50.0 und AnySetup

Meine Suche funktioniert soweit. In "$element" steht z.b. EFFold

if(preg_match("#\OrderDependency: (.*?) (.*?) \".$element."#", $string1, $default)){
..

Das Problem ist nun das in der Datei zuerst eine ähnliche Zeile kommt, nämlich:
*OrderDependency: 0.0 AnySetup *EFFoldOpt

und diese wird gefunden auch mit EFFold
Ich suche also etwas das ganz genau nach dem Wort "EFFold" sucht.
Ich habe schon versucht ein Zeilenende \n zu setzen aber das ging schief.

Gesucht wird also:
*OrderDependency: 50.0 AnySetup *EFFold

Ich hoffe ich habe mich verständlich ausgedrückt :-)

vielen Dank und viele Grüße
hawk