C++编程题:输入一段文字,其中包含一些非法的单词,请将这些非法单词删除或替换,然后输出过滤后的文字

2025-02-27 23:41:04
推荐回答(2个)
回答1:

和楼上的想法相似,不过我建议做一个非法词的词库。假设输入文字时自然语言或者类自然语言,那么一般情况下非法词库会比合法词库小得多。遍历每个单词,如果非法就删除或者替换。
不知道你处理删除或者替换的规则。。不过举个简单的例子,可以建立一个map结构,把非法单词作为key,处理方法作为value存起来,
(fuck, 'D') //删除
(hell, "god") //替换
接下来遍历输入文件就行了

回答2:

提供一个思路
做一个合法单词库
把所有合法单词按照一定组织存起来
然后依次比较单词值 相同则合法,不同则删除

如果要替换的话,就查找最像的单词,这个算法就多了,你可以查一下