Most (if not all) of the solutions posted don't deal well with words with internal punctuation, and/or leading punctuation. This does. (Though it will still fail for hyphenated names like Pratt-Whitney... but I can't see any easy way to discern them from regular hyphenated words.)
#! /usr/bin/perl use warnings; use strict; while (<DATA>) { $_ = lc $_; s/(^| )(\p{Punct}*)(\w)/$1$2\U$3/g; print; } __DATA__ THIS iS a Text IN TITLE CASE "THIS IS A 'TEST' CASE" JOE MARCONES JOE'S COMPANY holy s**t, batman! how about PARENTHETICAL TEXT (LIKE this.)
In reply to Re: Capitalize First Letter of Each Word
by thundergnat
in thread Capitalize First Letter of Each Word
by Anonymous Monk
| For: | Use: | ||
| & | & | ||
| < | < | ||
| > | > | ||
| [ | [ | ||
| ] | ] |