User:Peter Stindberg/strCapitalize

From Second Life Wiki
Jump to navigation Jump to search

Capitalize first letter of each word

This function will take a string as input and return the string with the first letter of each word capitalized and all the other letters in lowercase. Works great for natural language, will fail with acronyms. For this, the "llToLower" could be removed.

string strCapitalize(string str)
{
    list phrase = llParseStringKeepNulls(str, [" "], []);
    integer i;
    for (i = 0; i < llGetListLength(phrase) ; i++) {
        phrase = llListReplaceList(phrase, [llToUpper(llGetSubString(llList2String(phrase,i),0,0)) + llToLower(llGetSubString(llList2String(phrase,i),1,-1))], i, i);
    }
    return llDumpList2String(phrase, " ");
}