There's a couple of other things to note.
- You can use a {n} quantifier to get an exact number of things so the [a-zA-Z][a-zA-Z][a-zA-Z] could be written [a-zA-Z]{3}. (You can also use {m,n} for a range of occurances and {m,} for m or more occurances, but you can't do {,n} for up to n occurances).
- split is most commonly used with a pattern as it's first argument so your split '...', ... should perhaps be split /.../, .... You can have an expression as the first argument but that is usually for patterns that may change at run time; since your expression is a single-quoted string which will not change you should be using a pattern. (Read the documentation for the special case of split'ing on the empty string ''.
I hope this is of interest.
Cheers,
JohnGG