Deine if-Abfrage geht einfach ins leere:
Bei gleichem Token machst du:
\ifx a a \empty
a=a ist aber richtig. Somit gibt er empty aus.
Du solltest hier mit xparse arbeiten:
Code:
\documentclass{scrreprt}
\usepackage{xparse}
\NewDocumentCommand\urls{ o m }%
{%
\url{ #2 }%
\IfNoValueF{#1}{\footnote{Abruf am: #1}}%
}
\usepackage{hyperref}
\begin{document}
Fehler: \urls[22.02.2013]{http://www.google.de}
funktioniert (ohne Datum): \urls{http://www.google.de}
funktioniert (mit Leerzeichen): \urls[ 22.05.2013]{http://www.google.de}
funktioniert: \urls[01.05.2013]{http://www.google.de}
Fehler: \urls[11.05.2013]{http://www.google.de}
Fehler: \urls[22.05.2013]{http://www.google.de}
Fehler: \urls[zz.ww]{http://www.google.de}
\end{document}
Marco
Lesezeichen