Sample code for 30+ languages & platforms
Lua Requires Chilkat v9.5.0.77+

StringBuilder GetBefore

Demonstrates the StringBuilder.GetBefore method.

Chilkat Lua Downloads

Lua
local chilkat = require("chilkat")

local sb = chilkat.StringBuilder.new()
local success = sb:append("www.chilkatsoft.com")

-- The GetBefore method returns the contents of the string up to but not including
-- the marker string.  If the remove flag is true, then both the returned string AND
-- the marker are removed.
local removeFlag = false
local marker = "."
local substr = sb:get_before(marker, removeFlag)
print("substr = " .. substr)
print("sb contains: " .. sb:get_as_string())

-- Output:
-- substr = www
-- sb contains: www.chilkatsoft.com

removeFlag = true
substr = sb:get_before(marker, removeFlag)
print("substr = " .. substr)
print("sb contains: " .. sb:get_as_string())

-- Output:
-- substr = www
-- sb contains: chilkatsoft.com

-- If the marker is not found, and the removeFlag is true,
-- then the entire string is returned and the sb is cleared.
-- For example:
sb:clear()
sb:append("111--222--333--444")
marker = "--"
removeFlag = true
while sb.length > 0 do
    substr = sb:get_before(marker, removeFlag)
    print("substr = " .. substr .. ", sb contains: " .. sb:get_as_string())
end

-- Output is:
-- substr = 111, sb contains: 222--333--444
-- substr = 222, sb contains: 333--444
-- substr = 333, sb contains: 444
-- substr = 444, sb contains: