Re: simple golf for fun
[email protected] (Daniel Tiefnig) Wed, 17 Jan 2007 13:16:30 +0100
| Newsgroups | perl.golf |
|---|---|
| Message-ID | <[email protected]> |
Ton Hospel wrote: > -p0 s/\G(.*)(.* )(?=\1.\2|$)//g > > This should be about as efficient as a simple regex approach gets. > It's also the shortest yet :-) It outputs starting from the first > line that can't be extended. No output means all lines work. If you're free to output whatever you want on mismatch, you can also just omit the "\G". -p0 s/\G(.*)(.* )(?=\1.\2|$)//g Will print all lines that preceed invalid changes. (As requested!) One can create files that will make some problems, though. If a line does not add at least one character, strange things may happen. But I think it will always output something. And until someone proves the contrary, I consider this being the shortest solution so far. :o) lg, daniel