Text 如何删除文本中的重复单词(相同单词但大小写不同)

Text 如何删除文本中的重复单词(相同单词但大小写不同),text,Text,我有一个文本文件,其中包含一长串单词。其中一些通过案例的方式重叠,例如: 诚实 诚实 我想去掉大写字母,让小写字母作为一个单词计算。 我该怎么做 谢谢。我试过了,拿到了 > cat test Honesty World Hello world Hello honesty > sort -uf test Hello Honesty World > sort -uf test | tr A-Z a-z hello honesty world 谢谢你的帮助 读一个单词

我有一个文本文件,其中包含一长串单词。其中一些通过案例的方式重叠,例如:

  • 诚实
  • 诚实
我想去掉大写字母,让小写字母作为一个单词计算。 我该怎么做

谢谢。

我试过了,拿到了

> cat test
Honesty
World
Hello
world
Hello
honesty

> sort -uf test
Hello
Honesty
World

> sort -uf test | tr A-Z a-z
 hello
 honesty
 world
谢谢你的帮助

  • 读一个单词
  • 将其转换为小写
  • 用集合/哈希表之类的东西检查重复项
  • 例如,在C++中,你可以使用这样的东西:

    #include <set>
    #include <string>
    #include <iostream>
    #include <algorithm>
    #include <ctype.h>
    
    struct lowercase { 
        std::string operator()(std::string const &s) const { 
            std::string ret(s);
            std::transform(&s[0], &s[s.length()-1], &ret[0], tolower);
            return ret;
        }
    };
    
    int main() {
        std::set<std::string> items;
    
        std::transform(
            std::istream_iterator<std::string>(std::cin), 
            std::istream_iterator<std::string>(), 
            std::inserter(items, items.begin()),
            lowercase());
    
        std::copy(items.begin(), items.end(), 
            std::ostream_iterator<std::string>(std::cout, "\n"));
        return 0;
    }
    
    #包括
    #包括
    #包括
    #包括
    #包括
    结构小写{
    std::string运算符()(std::string const&s)const{
    std::字符串ret(s);
    std::transform(&s[0],&s[s.length()-1],&ret[0],tolower);
    返回ret;
    }
    };
    int main(){
    std::设置项目;
    std::transform(
    std::istream_迭代器(std::cin),
    std::istream_迭代器(),
    std::inserter(items,items.begin()),
    小写();
    复制(items.begin(),items.end(),
    std::ostream_迭代器(std::cout,“\n”);
    返回0;
    }
    
    您是否要编写一个程序来完成此操作?或者你只是有一个文本文件需要编辑一次,而你只是在寻找一个工具来帮助它?