Om nah hoo pez nyeetz,
wiederholt vielen Dank für Zeit und Mühe.
<!--#if expr="${DOCUMENT_URI} = //([0-9]{4,})/${DOCUMENT_NAME}$/"
<!--#set var="jahr" value="${1}" -->
<!--#endif -->
<!--#echo var="jahr" -->
>
Die ausführlichen Erläuterungen dazu habe ich verstanden. Leider gibt es die Fehlermeldung, dass ein Fehler während der Ausführung dieser Direktive aufgetreten ist. Bestimmt ist es nur eine Syntax-Geschichte. Wo gibt es denn etwas aussagekräftigere Fehlermeldungen?
Da es auch Dateien ohne Jahreszahl gibt, habe ich den Code wie folgt verändert:
~~~html
<!--#if expr="${DOCUMENT_URI} = /\/([0-9]{4,})\/${DOCUMENT_NAME}$/"
<!--#set var="jahr" value="${1}" -->
<!--#else -->
<!--#config timefmt="%Y" -->
<!--#set var="jahr" value="${DATE_LOCAL}" -->
<!--#endif -->
<!-- Zur Kontrolle -->
<!--#echo var="jahr" -->
mit dem Ziel, dass das aktuelle Jahr aufgerufen wird, sollte jemand z.B. die index.html anschauen.
Der else-Zweig ist wohl richtig, denn wenn ich nur ~~~html
<!--#config timefmt="%Y" -->
<!--#set var="jahr" value="${DATE_LOCAL}" -->
verwende, bekomme ich die erwartete Ausgabe.
Der erste Verdacht für die falsche Syntax war
`<!--#set var="jahr" value="${1}" -->`{:.language-html}
weil es im [Artikel zur Variablensubstituion](http://httpd.apache.org/docs/2.2/mod/mod_include.html#substitution) etwas anders aussieht. Die Veränderung zu
`<!--#set var="jahr" value="$1" -->`{:.language-html}
ändert jedoch nichts an der Fehlermeldung ebenso wie die Änderung zu
`<!--#set var="jahr" value="abcd" -->`{:.language-html}.
Deshalb muss es wohl an der Bedingung liegen.
Matthias
--
![](http://www.billiger-im-urlaub.de/kreis_sw.gif)