How can I access/change the first N letters of a string?

There are many ways. If you just want to grab a copy, use substr():

    $first_byte = substr($a, 0, 1);
If you want to modify part of a string, the simplest way is often to use substr() as an lvalue:

    substr($a, 0, 3) = "Tom";
Although those with a pattern matching kind of thought process will likely prefer

    $a =~ s/^.../Tom/;

Back to perlfaq4