Description
Currently, "bananas".contains("nana")
returns false. It is the only substring of "bananas" for which this is true:
fn main() {
let b = "bananas";
for i in range(0, b.len()) {
for j in range(i, b.len() + 1) {
let curr = b.slice(i, j);
println!("{} - {}", b.contains(curr), curr);
}
}
}
results in:
true -
true - b
true - ba
true - ban
true - bana
true - banan
true - banana
true - bananas
true -
true - a
true - an
true - ana
true - anan
true - anana
true - ananas
true -
true - n
true - na
true - nan
false - nana
true - nanas
true -
true - a
true - an
true - ana
true - anas
true -
true - n
true - na
true - nas
true -
true - a
true - as
true -
true - s
I've done some preliminary work tracking this down. The problem seems to be in core::str::TwoWaySearcher
.
Metadata
Metadata
Assignees
Labels
No labels