in reply to Re: Regexp: Only tr second occurance
in thread Regexp: Only tr second occurance

Easier to understand perhaps but your claim might be more justified if it actually worked properly.

$test="123.0456.0789.0-WHOOPS"; $test =~ s/(\.0.*)(.0)/$1/; print "$test\n"; __DATA__ 123.0456.0789-WHOOPS

you want a .*? ie

$test =~ s/(\.0.*?)\.0/$1/s;
will work. You also need a \. on the second .0 so it does not match the wrong stuff ie 00 and you don't need to capture into $2 as you are just going to delete that part....Finally if the string can have newlines in it you need the /s modifier which will not hurt anyway. Now it may or may not be as readable as Abigail-IIs example but should be approximitely as robust.

cheers

tachyon