Correcting a mistake of mine: >Date: Sat, 25 Apr 2009 18:24:08 +0200 >From: Uwe Lück <[log in to unmask]> > >\def\in@#1#2{% > \def\in@@##1#1##2\in@@{% > \ifx\in@@##2\in@@\in@false\else\in@true\fi}% > \in@@#2\in@#1\in@@} > >With \in@{<pattern>}{<target>}, the emptiness test is correct unless ><pattern><copy> is in <target> where <copy> is a copy of the actual \in@@. >The final split ##2 is non-empty iff <pattern> is in <target> or <patter> >is in <target> where <pattern> is <patter>\[log in to unmask] (The latter case includes >that <pattern> could be a sequence of `\in@'s where ##2 would be one \[log in to unmask]) The final split ##2 is non-empty iff <pattern> is in <target> or <pat> ends <target> where <pattern> is <pat>\in@<ern> and <pat> starts with <ern>. Cheers!! Uwe.