How to compare two strings lexicographically in Rust

2 Answers

0 votes
fn main() {
    println!("{:?}", compare("aa", "ab")); // <
    println!("{:?}", compare("a", "b")); // <
    println!("{:?}", compare("a", "c")); // <
    
    println!("{:?}", compare("aa", "aa")); // ==

    println!("{:?}", compare("ba", "aa")); // >
    println!("{:?}", compare("ca", "aa")); // >
    println!("{:?}", compare("ab", "aa")); // > 
}

fn compare(a: &str, b: &str) -> std::cmp::Ordering {
    a.cmp(b)
}


 
 
/*
run:

Less
Less
Less
Equal
Greater
Greater
Greater

*/

 



answered Aug 22, 2024 by avibootz
0 votes
fn main() {
    if compare("aa", "ab") == std::cmp::Ordering::Less {
        println!("It's Less");
    } else if compare("aa", "ab") == std::cmp::Ordering::Equal {
        println!("It's Equal");
    } else {
        println!("It's Greater");
    }
}

fn compare(a: &str, b: &str) -> std::cmp::Ordering {
    a.cmp(b)
}

 
 
/*
run:

It's Less

*/

 



answered Aug 22, 2024 by avibootz

Related questions

1 answer 118 views
1 answer 139 views
1 answer 126 views
1 answer 120 views
1 answer 112 views
1 answer 112 views
1 answer 111 views
...