提交 04e89af6 编写于 作者: B Brian Anderson

Add std::str::contains

上级 4b58071f
......@@ -4,7 +4,8 @@
unshift_char, shift_char, pop_char, push_char, is_utf8, from_chars,
to_chars, char_len, char_at, bytes, is_ascii, shift_byte, pop_byte,
unsafe_from_byte, unsafe_from_bytes, from_char, char_range_at,
str_from_cstr, sbuf, as_buf, push_byte, utf8_char_width, safe_slice;
str_from_cstr, sbuf, as_buf, push_byte, utf8_char_width, safe_slice,
contains;
native "rust" mod rustrt {
fn rust_str_push(&s: str, ch: u8);
......@@ -254,6 +255,10 @@ fn match_at(haystack: str, needle: str, i: int) -> bool {
ret -1;
}
fn contains(haystack: str, needle: str) -> bool {
0 <= find(haystack, needle)
}
fn starts_with(haystack: str, needle: str) -> bool {
let haystack_len: uint = byte_len(haystack);
let needle_len: uint = byte_len(needle);
......
......@@ -304,3 +304,14 @@ fn vec_str_conversions() {
i += 1u;
}
}
#[test]
fn contains() {
assert str::contains("abcde", "bcd");
assert str::contains("abcde", "abcd");
assert str::contains("abcde", "bcde");
assert str::contains("abcde", "");
assert str::contains("", "");
assert !str::contains("abcde", "def");
assert !str::contains("", "a");
}
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册