From 7e8ee5ed9cad6484e9f13f81731b102ced58402e Mon Sep 17 00:00:00 2001 From: Adam Carpenter Date: Tue, 9 Jul 2019 15:14:04 -0400 Subject: Init. --- meap/meap-code/ch1/ch1-escape-html.rs | 22 ++++++++++++++++++++++ 1 file changed, 22 insertions(+) create mode 100755 meap/meap-code/ch1/ch1-escape-html.rs (limited to 'meap/meap-code/ch1/ch1-escape-html.rs') diff --git a/meap/meap-code/ch1/ch1-escape-html.rs b/meap/meap-code/ch1/ch1-escape-html.rs new file mode 100755 index 0000000..7b61232 --- /dev/null +++ b/meap/meap-code/ch1/ch1-escape-html.rs @@ -0,0 +1,22 @@ +fn escape_html(maybe_html: &str) -> String { + let mut out = String::with_capacity(maybe_html.len()); + + for c in maybe_html.chars() { + match c { + '<' => out.push_str("<"), + '>' => out.push_str(">"), + '&' => out.push_str("&"), + '\'' => out.push_str("'"), + '"' => out.push_str("""), + _ => out.push(c), + }; + } + + out +} + +fn main() { + let html = "

\"Hello, World!\"

"; + let escaped_html = escape_html(html); + println!("{}", escaped_html); +} -- cgit v1.2.3