Strings

āĻ¸ā§āĻŸā§āĻ°āĻŋāĻ‚āĻ—ā§āĻ˛āĻŋāĻ•ā§‡ āĻ‰āĻĒāĻ¸ā§āĻĨāĻžāĻĒāĻ¨ āĻ•āĻ°āĻžāĻ° āĻœāĻ¨ā§āĻ¯ āĻ°āĻžāĻ¸ā§āĻŸ āĻ āĻĻā§āĻŸāĻŋ āĻ‰āĻĒāĻžā§Ÿā§‡ āĻ†āĻ›ā§‡, āĻ‰āĻ­āĻ¯āĻŧāĻ‡ āĻĒāĻ°āĻŦāĻ°ā§āĻ¤ā§€āĻ¤ā§‡ āĻ†āĻ°āĻ“ āĻ—āĻ­ā§€āĻ°āĻ¤āĻžāĻ¯āĻŧ āĻ•āĻ­āĻžāĻ° āĻ•āĻ°āĻž āĻšāĻŦā§‡āĨ¤ āĻ‰āĻ­āĻ¯āĻŧāĻ‡ āĻ¸āĻŦāĻ¸āĻŽā§Ÿā§‡ āĻ‡āĻ‰.āĻŸāĻŋ.āĻāĻĢ-ā§Ž āĻāĻ¨āĻ•ā§‹āĻĄ āĻ•āĻ°ā§‡ āĻ¸ā§āĻŸā§āĻ°āĻŋāĻ‚ āĻ¸āĻ‚āĻ°āĻ•ā§āĻˇāĻŖ āĻ•āĻ°ā§‡āĨ¤

  • String - āĻāĻ•āĻŸāĻŋ āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤āĻ¨āĻ¯ā§‹āĻ—ā§āĻ¯, āĻŽāĻžāĻ˛āĻŋāĻ•āĻžāĻ¨āĻžāĻ§ā§€āĻ¨ āĻ¸ā§āĻŸā§āĻ°āĻŋāĻ‚āĨ¤
  • &str - āĻāĻ•āĻŸāĻŋ āĻĒāĻ āĻ¨āĻ¯ā§‹āĻ—ā§āĻ¯ āĻ¸ā§āĻŸā§āĻ°āĻŋāĻ‚āĨ¤ āĻ¸ā§āĻŸā§āĻ°āĻŋāĻ‚ āĻ˛āĻŋāĻŸāĻžāĻ°ā§‡āĻ˛ā§‡ āĻāĻ‡ āĻ§āĻ°āĻ¨ āĻ†āĻ›ā§‡āĨ¤
fn main() {
    let greeting: &str = "Greetings";
    let planet: &str = "đŸĒ";
    let mut sentence = String::new();
    sentence.push_str(greeting);
    sentence.push_str(", ");
    sentence.push_str(planet);
    println!("final sentence: {}", sentence);
    println!("{:?}", &sentence[0..5]);
    //println!("{:?}", &sentence[12..13]);
}
This slide should take about 5 minutes.

āĻāĻ‡ āĻ¸ā§āĻ˛āĻžāĻ‡āĻĄ āĻ¸ā§āĻŸā§āĻ°āĻŋāĻ‚ āĻ•āĻŋ āĻœāĻŋāĻ¨āĻŋāĻ¸ āĻāĻŸāĻž āĻĻā§‡āĻ–āĻžā§ŸāĨ¤ āĻāĻ–āĻžāĻ¨ā§‡ āĻ¸āĻŦāĻ•āĻŋāĻ›ā§ āĻĒāĻ°ā§‡ āĻ†āĻ°āĻ“ āĻ—āĻ­ā§€āĻ°āĻ¤āĻžāĻ¯āĻŧ āĻ•āĻ­āĻžāĻ° āĻ•āĻ°āĻž āĻšāĻŦā§‡, āĻ•āĻŋāĻ¨ā§āĻ¤ā§ āĻ¸ā§āĻŸā§āĻ°āĻŋāĻ‚ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻ•āĻ°āĻžāĻ° āĻœāĻ¨ā§āĻ¯,āĻĒāĻ°āĻŦāĻ°ā§āĻ¤ā§€ āĻ¸ā§āĻ˛āĻžāĻ‡āĻĄā§‡āĻ° āĻœāĻ¨ā§āĻ¯ā§‡ āĻāĻŦāĻ‚ āĻ…āĻ¨ā§āĻļā§€āĻ˛āĻ¨ā§‡āĻ° āĻœāĻ¨ā§āĻ¯ āĻāĻŸāĻŋ āĻ¯āĻĨā§‡āĻˇā§āĻŸāĨ¤

  • UB āĻāĻ•āĻŸāĻŋ āĻ‡āĻ‰.āĻŸāĻŋ.āĻāĻĢ-ā§Ž āĻ¸ā§āĻŸā§āĻ°āĻŋāĻ‚-āĻ āĻĨāĻžāĻ•āĻž āĻ­ā§āĻ˛ āĻāĻŦāĻ‚ āĻ¸ā§‡āĻ‡ āĻœāĻ¨ā§āĻ¯ā§‡ āĻāĻŸāĻŋ āĻ¨āĻŋāĻ°āĻžāĻĒāĻĻ āĻ°āĻžāĻ¸ā§āĻŸ āĻāĻ° āĻ­ā§‡āĻ¤āĻ°ā§‡ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻ•āĻ°āĻž āĻ¯āĻžā§Ÿ āĻ¨āĻžāĨ¤

  • String āĻšāĻšā§āĻ›ā§‡ āĻ•āĻ¨āĻ¸ā§āĻŸā§āĻ°āĻžāĻ•ā§āĻŸāĻ° (::new()) āĻ¸āĻš āĻāĻ•āĻŸāĻŋ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ°āĻ•āĻžāĻ°ā§€-āĻ¸āĻ‚āĻœā§āĻžāĻžāĻ¯āĻŧāĻŋāĻ¤ āĻĒā§āĻ°āĻ•āĻžāĻ° āĻāĻŦāĻ‚ āĻāĻ¤ā§‡ s.push_str(..) -āĻ° āĻŽāĻ¤āĻ¨ āĻŽā§‡āĻĨāĻĄ āĻ“ āĻ°ā§Ÿā§‡āĻ›ā§‡āĨ¤

  • &str āĻāĻŸāĻž āĻ¯ā§‡ āĻāĻ•āĻŸāĻž āĻ°ā§‡āĻĢāĻžāĻ°ā§‡āĻ¨ā§āĻ¸ āĻ¸ā§‡āĻŸāĻž āĻāĻŸāĻžāĻ¤ā§‡ āĻĨāĻžāĻ•āĻž & āĻĻāĻŋā§Ÿā§‡ āĻŦā§‹āĻāĻž āĻ¯āĻžāĻšā§āĻ›ā§‡āĨ¤ āĻ†āĻŽāĻ°āĻž āĻĒāĻ°ā§‡ āĻ°ā§‡āĻĢāĻžāĻ°ā§‡āĻ¨ā§āĻ¸ āĻĻā§‡āĻ–āĻŦā§‹ , āĻ¤āĻžāĻ‡ āĻ†āĻĒāĻžāĻ¤āĻ¤ āĻļā§āĻ§ā§ &str āĻ•ā§‡ āĻāĻ•āĻŸāĻŋ āĻ‡āĻ‰āĻ¨āĻŋāĻŸ āĻšāĻŋāĻ¸ā§‡āĻŦā§‡ āĻ­āĻžāĻŦā§āĻ¨ āĻ¯āĻžāĻ° āĻ…āĻ°ā§āĻĨ "āĻāĻŽāĻ¨ āĻāĻ•āĻŸāĻŋ āĻ¸ā§āĻŸā§āĻ°āĻŋāĻ‚ āĻ¯āĻž āĻļā§āĻ§ā§ āĻĒāĻ āĻ¨āĻ¯ā§‹āĻ—ā§āĻ¯ "āĨ¤

  • āĻ•āĻŽā§‡āĻ¨ā§āĻŸ āĻ•āĻ°āĻž āĻ˛āĻžāĻ‡āĻ¨ āĻŦāĻžāĻ‡āĻŸ āĻ…āĻŦāĻ¸ā§āĻĨāĻžāĻ¨ āĻĻā§āĻŦāĻžāĻ°āĻž āĻ¸ā§āĻŸā§āĻ°āĻŋāĻ‚ āĻŽāĻ§ā§āĻ¯ā§‡ āĻ‡āĻ¨āĻĄā§‡āĻ•ā§āĻ¸ āĻ•āĻ°āĻ›ā§‡āĨ¤ 12..13 āĻ¸ā§€āĻŽāĻžāĻ¨āĻžāĻ¯āĻŧ āĻĒā§œā§‡ āĻ¨āĻž, āĻ¤āĻžāĻ‡ āĻĒā§āĻ°ā§‹āĻ—ā§āĻ°āĻžāĻŽ āĻ†āĻ¤āĻ™ā§āĻ•āĻŋāĻ¤ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻĒā§āĻ°āĻĻāĻ°ā§āĻļāĻ¨ āĻ•āĻ°ā§‡āĨ¤ āĻ¤ā§āĻ°ā§āĻŸāĻŋ āĻŦāĻžāĻ°ā§āĻ¤āĻžāĻ° āĻ‰āĻĒāĻ° āĻ­āĻŋāĻ¤ā§āĻ¤āĻŋ āĻ•āĻ°ā§‡ āĻāĻŸāĻŋāĻ•ā§‡ āĻāĻ•āĻŸāĻŋ āĻ¸āĻ āĻŋāĻ• āĻ¸ā§€āĻŽāĻžāĻ¨āĻžāĻ° āĻŽāĻ§ā§āĻ¯ā§‡ āĻ¨āĻŋā§Ÿā§‡ āĻ†āĻ¸ā§āĻ¨āĨ¤

  • Raw strings allow you to create a &str value with escapes disabled: r"\n" == "\\n". You can embed double-quotes by using an equal amount of # on either side of the quotes:

    fn main() {
        println!(r#"<a href="link.html">link</a>"#);
        println!("<a href=\"link.html\">link</a>");
    }
  • {:?} āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻ•āĻ°āĻž āĻĄāĻŋāĻŦāĻžāĻ—āĻŋāĻ‚ āĻ‰āĻĻā§āĻĻā§‡āĻļā§āĻ¯ā§‡ āĻŽāĻžāĻ¨āĻ—ā§āĻ˛āĻŋāĻ° āĻ…ā§āĻ¯āĻžāĻ°ā§‡/āĻ­ā§‡āĻ•ā§āĻŸāĻ°/āĻ¸ā§āĻŸā§āĻ°āĻžāĻ•āĻŸ āĻĒā§āĻ°āĻŋāĻ¨ā§āĻŸ āĻ•āĻ°āĻžāĻ° āĻāĻ•āĻŸāĻŋ āĻ¸ā§āĻŦāĻŋāĻ§āĻžāĻœāĻ¨āĻ• āĻ‰āĻĒāĻžāĻ¯āĻŧ āĻāĻŦāĻ‚ āĻāĻŸāĻŋ āĻ¸āĻžāĻ§āĻžāĻ°āĻŖāĻ¤ āĻ…āĻ¨ā§‡āĻ• āĻ•ā§‹āĻĄā§‡ āĻŦā§āĻ¯āĻŦāĻšā§ƒāĻ¤ āĻšāĻ¯āĻŧāĨ¤