i just learned lookahead in regular expression, but there is one detail that is bugging me:
% set test abcdehehfkdehemno
% regexp {([^ ])*.} $test match
1
% set match
abcdehehfkdehemno
% regexp {((?=dehe).)*.} $test match
1
% set match
a
why the ([^ ])*
is greedy and the ((?=dehe).)*
is not, i expect the lookahead version return m instead a ?