mirror of
https://github.com/rust-lang/rustlings.git
synced 2024-12-26 07:20:30 +00:00
feat(strings): add strings3
This commit is contained in:
parent
f5e4c16eed
commit
c1ed6b10fe
2 changed files with 52 additions and 0 deletions
41
exercises/strings/strings3.rs
Normal file
41
exercises/strings/strings3.rs
Normal file
|
@ -0,0 +1,41 @@
|
|||
// strings3.rs
|
||||
// Execute `rustlings hint strings3` or use the `hint` watch subcommand for a hint.
|
||||
|
||||
fn trim_me(input: &str) -> String {
|
||||
// TODO: Remove whitespace from the end of a string!
|
||||
???
|
||||
}
|
||||
|
||||
fn compose_me(input: &str) -> String {
|
||||
// TODO: Add " world!" to the string! There's multiple ways to do this!
|
||||
???
|
||||
}
|
||||
|
||||
fn replace_me(input: &str) -> String {
|
||||
// TODO: Replace "cars" in the string with "balloons"!
|
||||
???
|
||||
}
|
||||
|
||||
#[cfg(test)]
|
||||
mod tests {
|
||||
use super::*;
|
||||
|
||||
#[test]
|
||||
fn trim_a_string() {
|
||||
assert_eq!(trim_me("Hello! "), "Hello!");
|
||||
assert_eq!(trim_me(" What's up!"), "What's up!");
|
||||
assert_eq!(trim_me(" Hola! "), "Hola!");
|
||||
}
|
||||
|
||||
#[test]
|
||||
fn compose_a_string() {
|
||||
assert_eq!(compose_me("Hello"), "Hello world!");
|
||||
assert_eq!(compose_me("Goodbye"), "Goodbye world!");
|
||||
}
|
||||
|
||||
#[test]
|
||||
fn replace_a_string() {
|
||||
assert_eq!(replace_me("I think cars are cool"), "I think balloons are cool");
|
||||
assert_eq!(replace_me("I love to look at cars"), "I love to look at balloons");
|
||||
}
|
||||
}
|
11
info.toml
11
info.toml
|
@ -443,6 +443,17 @@ Yes, it would be really easy to fix this by just changing the value bound to `wo
|
|||
string slice instead of a `String`, wouldn't it?? There is a way to add one character to line
|
||||
9, though, that will coerce the `String` into a string slice."""
|
||||
|
||||
[[exercises]]
|
||||
name = "strings3"
|
||||
path = "exercises/strings/strings3.rs"
|
||||
mode = "test"
|
||||
hint = """
|
||||
There's tons of useful standard library functions for strings. Let's try and use some of
|
||||
them!
|
||||
|
||||
For the compose_me method: You can either use the `format!` macro, or convert the string
|
||||
slice into an owned string, which you can then freely extend."""
|
||||
|
||||
# MODULES
|
||||
|
||||
[[exercises]]
|
||||
|
|
Loading…
Reference in a new issue