memchr

Function memchr

Source
pub fn memchr(needle: u8, haystack: &[u8]) -> Option<usize>
Expand description

Search for the first occurrence of a byte in a slice.

This returns the index corresponding to the first occurrence of needle in haystack, or None if one is not found. If an index is returned, it is guaranteed to be less than haystack.len().

While this is semantically the same as something like haystack.iter().position(|&b| b == needle), this routine will attempt to use highly optimized vector operations that can be an order of magnitude faster (or more).

ยงExample

This shows how to find the first position of a byte in a byte string.

use memchr::memchr;

let haystack = b"the quick brown fox";
assert_eq!(memchr(b'k', haystack), Some(8));