ChunkSplit

From Wowpedia
Jump to: navigation, search
This is a user-defined function that you can copy and paste into your addon.

Split a string into groups of "length" each ending with "endChars" (identical to the PHP function of the same name).

table = <PREFIX>_ChunkSplit(string [, length [, endChars]])


Function Parameters

Arguments

string 
String - containing words that you would like split.
length 
Integer - number of characters to split the string by. Default is 76.
endChars 
String - Add this to the end of each chunk. Default is "\n".

Returns

chunks
Table - array of chunks


Example

chunks = <PREFIX>_ChunkSplit("World of Warcraft", 2)

Result

chunks = {
    "Wo\n",
    "rl\n",
    "d \n",
    "of\n",
    " W\n",
    "ar\n",
    "cr\n",
    "af\n",
    "t\n",
}

Code

function <PREFIX>_ChunkSplit(string, length, endChars)
    if not string then
        return {}
    end
    -- Sanity check: make sure length is an integer.
    length = floor(tonumber(length))
    if not length then
        length = 76
    end
    if not endChars then
        endChars = "\n"
    end
    local Table = {}
    for i=1, strlen(string), length do
        table.insert(Table, strsub(string, i, i + length) .. endChars)
    end
    return Table
end