String.prototype.toTitleCase = function () {
return this'\uc1\u8216?\uc1\u8217?"\uc1\u8220?.@:\\/\\{\\(\\[<>_]+-? *)/g, function (match, p1, index, title) {
if (index > 0 && title.charAt(index - 2) !== ":" &&
match.search(/^(a(nd?|s|t)?|b(ut|y)|en|for|i[fn]|o[fnr]|t(he|o)|vs?\\.?|via)[ \\-]/i) > -1)
return match.toLowerCase();
if (title.substring(index - 1, index +'"_{(\\[]/) > -1)
return match.charAt(0) + match.charAt(1).toUpperCase() + match.substr(2);
if (match.substr(1).search(/[A-Z]+|&|[\\w]+[._][\\w]+/) > -1 ||
title.substring(index - 1, index + 1).search(/[\\])}]/) > -1)
return match;
return match.charAt(0).toUpperCase() + match.substr(1);
});
};
Source: http://individed.com/code/to-title-case/
No comments:
Post a Comment