$str = join('_', map { ucfirst(lc($_)) } split ('_', $str));