我一直有一點麻煩與我的查找和替換功能,我可以讓它取代所有字符,但我只希望它改變匹配被禁止的字的字符。發現字符串向量中的特定字符時發現C++
這裏是我到目前爲止的代碼
class getTextData
{
private:
string currentWord;
vector<string> bannedWords;
vector<string> textWords;
int bannedWordCount;
int numWords;
char ch;
int index[3];
ifstream inFile();
public:
void GetBannedList(string fileName);
void GetWordAmount(string fileName);
void GetDocumentWords(string fileName);
void FindBannedWords();
void ReplaceWords(string fileOutput);
};
for(int i = 0; i <= numWords; i++)
{
for(int j = 0; j < bannedWordCount; j++)
{
if(string::npos != textWords[i].find(bannedWords[j]))
{
textWords[i] = "***";
}
}
}
這只是一個固定數量的*取代,但我想它來代替它與*不是全字匹配的字符。
在此先感謝
你看過正則表達式(正則表達式)嗎? – Tim 2012-03-07 15:31:58
你可以發佈'textWords'和'bannedWords'的聲明嗎? – hmjd 2012-03-07 15:32:08
@hmjd我修改了我的帖子以顯示聲明。 – bobthemac 2012-03-07 15:34:07