敏感词检测——敏感词出现的次数和位置 运用<iostream> 和<string.h>
时间: 2023-12-03 11:03:22 浏览: 126
好的,我可以为您提供一个基于 `<iostream>` 和 `<string.h>` 的敏感词检测的代码示例,可以实现敏感词出现的次数和位置的获取:
```c++
#include <iostream>
#include <string.h>
using namespace std;
// 定义敏感词库
const char* sensitiveWords[] = {"敏感词1", "敏感词2", "敏感词3", "敏感词4"};
// 敏感词检测函数
void sensitiveWordCheck(const char* text)
{
int textLen = strlen(text);
for (int i = 0; i < textLen; i++)
{
for (int j = 0; j < sizeof(sensitiveWords)/sizeof(char*); j++)
{
int wordLen = strlen(sensitiveWords[j]);
if (strncmp(text+i, sensitiveWords[j], wordLen) == 0)
{
cout << "敏感词:" << sensitiveWords[j] << ",位置:" << i << ",次数:1" << endl;
}
}
}
}
int main()
{
const char* text = "这是一段包含敏感词1和敏感词2的文本。";
sensitiveWordCheck(text);
return 0;
}
```
以上代码中,我们首先定义了一个敏感词库 `sensitiveWords`,然后通过 `sensitiveWordCheck` 函数实现对文本中的敏感词进行检测。在函数中,我们通过 `strlen` 函数获取文本长度,然后使用双重循环遍历文本和敏感词库,通过 `strncmp` 函数进行字符串匹配,如果匹配成功,则输出敏感词的位置和出现次数。在 `main` 函数中,我们定义了一个待检测的文本 `text`,并调用 `sensitiveWordCheck` 函数进行敏感词检测。
阅读全文