in reply to Getting characters from regex pattern

If your actual goal is to normalize case so that you get Initial Caps, you probably want to use ucfirst and lc:
perl -le '@a=qw/capri cApRi TITLE-case/; for(@a){s/(\pL+)/ucfirst(lc $ +1)/ge; print}'
prints:
Capri Capri Title-Case
(The "\pL+" in the regex matches all "letter" characters; if your data tends to involve content in languages with non-Latin, non-cased letters, you'll probably want to use "\p{LC}" or "\p{CasedLetter}+" instead.)