http://qs321.pair.com?node_id=307621


in reply to Regex: Case insensitive search but case sensitive replace

Replacements are always done with exactly the case you specify, so s/jane/###Jane###/i will replace any of JaNe, janE, JAne, etc with ###Jane###.

If you mean you want to capture some names and replace them having a capital letter first and lower thereafter, try something like s/(j\wn\w)/"###".ucfirst(lc($1))."###"/ie

Update: That turns out not to be the answer to the question the seeker was trying to ask. However, you can also do the above this way: s/($name)/###\u\L$1###/i