in reply to deleting lines from file

You're right about this being silly. This is what the unix "grep" command is for (and grep is available for ms-windows):
grep -v "two 222 sld" oldfile > newfile
Or, to do that with "pure Perl" on the command line:
perl -ne "print unless /two 222 sld/" oldfile > newfile
Now, if your talking about handling user input (to specify the line(s) to be deleted) that involves more than simple string matches, or weird stuff like unicode characters, then that's more interesting, but most cases are still one-liner command-line level jobs -- the kind of stuff that people used to do with the unix "awk" program (also available for ms-windows), which has been pretty much fully absorbed and replaced by perl. E.g. if the user wants to eliminate lines where the second token is an even number:
perl -ane 'print unless( $F[1]=~/^(\d+)$/ and $1 % 2 == 0 )'
(In this case, users of unix-style shells will want to use single quotes around the script to keep the shell from treating "$F" and "$1" as shell variables, whereas "MS-DOS Prompt" users will probably prefer double-quotes.)