How to remove the last N characters from a string in Rust

2 Answers

0 votes
fn remove_last_n_characters(s: &mut String, n: usize) {
    let len = s.chars().count();
    
    if n <= len {
        s.truncate(len - n);
    }
}

fn main() {
    let mut s = String::from("rust c c++ c# java");
    
    remove_last_n_characters(&mut s, 3);
    
    println!("{}", s); 
}


  
/*
run:

rust c c++ c# j

*/

 



answered Sep 12, 2024 by avibootz
0 votes
fn remove_last_n_characters(s: &str, n: usize) -> &str {
    let len = s.chars().count();
    
    if n <= len {
        &s[..s.char_indices().nth(len - n).unwrap().0]
    } else {
        s
    }
}

fn main() {
    let mut s = "rust c c++ c# java";
    
    s = remove_last_n_characters(&mut s, 3);
    
    println!("{}", s); 
}


  
/*
run:

rust c c++ c# j

*/

 



answered Sep 12, 2024 by avibootz
...