Der Martin: Verschiedene Titel im ausgelagerten Header

Beitrag lesen

Moin,

»» Das Zeichen ^ am Anfang des Ausdrucks bedeutet: Ausdruck muss am Anfang des Suchstrings auftauchen.
Also, er nimmt den letzten . (Punkt) ?

äh, nein - wie kommst du darauf?
Nochmal: Das Suchmuster für das Rewriting ist  ^(.*)

Nehmen wir das auseinander:
 ^ am Anfang des Suchmusters:
   Der gesuchte Ausdruck muss am Anfang der URL aufreten.
   Stünde das ^ innerhalb einer Zeichenklasse, z.B. [^uvw], dann hieße das
   "jedes beliebige Zeichen außer u, v, und w".
 ( ) Klammern:
   Bedeutet, dass der in der Klammer beschriebene Ausdruck als $1,$2,$3
   usw. gespeichert wird.
 .* in der Klammer:
   Ein . steht für *ein* beliebiges Zeichen, der Stern hinter einem Zeichen
   bedeutet: Beliebig viele davon, eventuell auch gar keins. Ein Pluszeichen
   hieße übrigens: Beliebig viele, aber mindestens eins.

Zusammengefasst bedeutet ^(.*) also:
Finde eine beliebige Anzahl beliebiger Zeichen, die am Anfang der URL stehen, und speichere den gefundenen Ausdruck in $1. Effektiv heißt das natürlich, dass das Suchmuster auf *alles* passt, was da kommen könnte. Wenn ich es recht überlege, ist damit sogar das ^ am Anfang überflüssig, denn wenn sowieso der gesamte URL-String auf das Suchmuster passt, steht dieser String eh am Anfang.

Also, das .inc muss am Ende des Ausdrucks stehen, in Form von dateiname.inc?

Genau.

Wäre dies dann nich so \*.inc ?

Wozu der Stern? Es wäre äußerst unwahrscheinlich, dass in URLs ein Stern auftritt (obwohl es AFAIK in HTTP sogar erlaubt wäre). Du würdest so eine Angabe einfangen, die einen Stern gefolgt von ".inc" am Ende enthält.
Ich will dagegen nur den Teilausdruck ".inc" am Ende finden, egal was davor steht.

Verwechseln darf ich aber das Dollarzeichen vom index.php?page=$1 nicht. Dort wäre es ein Platzhalter. Platzhalter1.

Ja, richtig. Wenn es als Platzhalter gemeint ist, folgt immer eine Ziffer; das ist also von "steht am Ende" eindeutig unterscheidbar.

Schönen Sonntag noch,
 Martin

--
Lieber eine Fliege im Porzellanladen
als ein Elefant in der Suppe.