aolifu_rust/
string.rs

1pub fn string_move() {
2    let s1  = String::from("Hello");
3    let s2 = s1;
4    println!("s2: {}", s2);
5}
6
7pub fn create_string() {
8    let s1 = String::new();
9    let s2 = "Hello World";
10    let s3 = s2.to_string();
11    let s4 = String::from("Hello World");
12    println!("{}, {}, {}, {}", s1, s2, s3, s4);
13}
14
15pub fn update_string() {
16    let mut  s1 = String::from("hello");
17    s1.push_str(" World");
18    s1.push('a');
19    println!("s1 value is {}", s1);
20
21    let s2 = String::from("123");
22    let s3 = s1 + &s2 ;
23    println!("s3 value is {}", s3);
24}
25
26pub fn format_string() {
27    let s1 = String::from("tic");
28    let s2 = String::from("tib");
29    let s3 = String::from("tia");
30    let s4 = format!("{}-{}-{}", s1, s2, s3);
31    println!("s4 value is {}", s4);
32}
33
34pub fn traverse_string() {
35    let s1 = "abc";
36    for b in s1.bytes() {
37        println!("byte value is {}", b);
38    }
39
40    for ch in s1.chars() {
41        println!("char value is {}", ch);
42    }
43}
44
45pub fn split_string() {
46    let hello = "hello";
47    let s = &hello[0..4];
48    println!("s value is {}", s);
49}
50
51fn string_append() {
52    let mut  s = String::from("Hello");
53    s.push_str(", World");
54    println!("{}", s);
55}
56
57fn string_deep_clone() {
58    let s1 = String::from("Hello2");
59    let s2 =s1.clone();
60    println!("s1: {}, s2: {}", s1, s2);
61}