On Apr 21, 2004, at 1:57, <[EMAIL PROTECTED]> wrote:

We want to find out the first position $n at which strings $x and $y
differ.  If $x eq $y, then $n is undef.  If $x ne $y but $x is a
prefix (aka initial segment) of $y, then $n should be equal to length
$x.  The operation must preserve both $x and $y (i.e. destructive
operations are disallowed).

By way of baseline, here's an utterly uninspired solution:

$n=0;while(($c=substr($x,$n,1)||undef $n) && $c eq substr($y,$n++,1)){;}

Second attempt:


$n=$x eq$y?$z:do{1while$x=~/./sg&$y=~/\G$&/g;$-[0]}

I think this is OK.

-- fxn



Reply via email to