Sample code for 30+ languages & platforms
Swift

StringBuilder GetBefore

Demonstrates the StringBuilder.GetBefore method.

The GetBefore method was added in Chilkat v9.5.0.77

Chilkat Swift Downloads

Swift

func chilkatTest() {
    var success: Bool = false

    let sb = CkoStringBuilder()!
    success = sb.append(value: "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.
    var removeFlag: Bool = false
    var marker: String? = "."
    var substr: String? = sb.get(before: marker, removeFlag: removeFlag)
    print("substr = \(substr!)")
    print("sb contains: \(sb.getAsString()!)")

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

    removeFlag = true
    substr = sb.get(before: marker, removeFlag: removeFlag)
    print("substr = \(substr!)")
    print("sb contains: \(sb.getAsString()!)")

    // 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(value: "111--222--333--444")
    marker = "--"
    removeFlag = true
    while (sb.length.intValue > 0) {
        substr = sb.get(before: marker, removeFlag: removeFlag)
        print("substr = \(substr!), sb contains: \(sb.getAsString()!)")
    }

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

}