pub fn remove(s: &String, i: usize, l: usize) -> String {
        assert!(i <= len(&s), "the index was larger than the target slice");

        let first = slice(&s, 0..i);
        let second = slice(&s, i + l..len(&s));

        [first, second].concat()
    }
/*
    removes from String from index with length, preserving graphemes
    */
removes from String from index with length, preserving graphemes
removes from String from index with length preserving graphemes
pub fn remove(s: &String, i: usize, l: usize) -> String {
        assert!(i <= len(&s), "the index was larger than the target slice");
        let first = slice(&s, 0..i);
        let second = slice(&s, i + l..len(&s));
        [first, second].concat()
    }
pub fn remove ( s : & String , i : usize , l : usize ) -> String { assert ! ( i len ( s ) " " ) ; let first = slice ( & s , 0 .. i ) ; let second = slice ( & s , i + l .. len ( & s ) ) ; [ first , second ] . concat ( ) }
removes from String from index with length, preserving graphemes
removes from String from index with length preserving graphemes
s
&String
i
usize
l
usize
s
&String
i
usize
l
usize