Rust
Rust
StringBuilder GetBefore
Demonstrates the StringBuilder.GetBefore method.The GetBefore method was added in Chilkat v9.5.0.77
Chilkat Rust Downloads
let sb = chilkat::StringBuilder::new();
let _ = sb.append("www.chilkatsoft.com").is_ok();
// 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.
let mut remove_flag = false;
let mut marker = ".".to_string();
let mut substr = sb.get_before(&marker, remove_flag).unwrap_or_default();
println!("substr = {}", substr);
println!("sb contains: {}", sb.get_as_string().unwrap_or_default());
// Output:
// substr = www
// sb contains: www.chilkatsoft.com
remove_flag = true;
substr = sb.get_before(&marker, remove_flag).unwrap_or_default();
println!("substr = {}", substr);
println!("sb contains: {}", sb.get_as_string().unwrap_or_default());
// 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();
let _ = sb.append("111--222--333--444");
marker = "--".to_string();
remove_flag = true;
while sb.length() > 0 {
substr = sb.get_before(&marker, remove_flag).unwrap_or_default();
println!("substr = {}, sb contains: {}", substr, sb.get_as_string().unwrap_or_default());
}
// Output is:
// substr = 111, sb contains: 222--333--444
// substr = 222, sb contains: 333--444
// substr = 333, sb contains: 444
// substr = 444, sb contains: