단어가 텍스트에 나타나는 횟수를 계산하려고합니다. HashMap
을 사용하고 있으며 구현시 대/소문자를 무시합니다.대/소문자를 구분하지 않는 문자열을 HashMap 키로 사용하는 효율적인 방법이 있습니까?
for line in reader.lines() {
for mut curr in line.as_ref().unwrap().split_whitespace() {
match word_map.entry(curr.to_string().to_lowercase()) {
Entry::Occupied(entry) => {
*entry.into_mut() += 1;
}
Entry::Vacant(entry) => {
entry.insert(1);
}
}
}
}
내가 "이"을 "은"같은 고려할 만 "는"이 나타나지 않으면 단지는 ""를 HashMap
에서 개최 : 나는 변환하여 모든 단어를 소문자 것을 얻을 수 있습니다. 지금 나는 모든 단어를 소문자로 둡니다. 이 작업을 수행하는 효율적인 방법이 있습니까?
텍스트에 The, THE 및 – raggy
이 포함 된 경우 어떻게됩니까? 모두 동일한 것으로 간주되며 처음 발견 된 버전을 저장해야합니다. 내 문제는 텍스트에 "the"가 없더라도 "The"만있는 경우에도 원본 형식이 아닌 소문자로 모두 저장됩니다. –