編一個程序,從string 對象中去掉標點符號。要求輸入到程序的字符串必須含有標點 符號,輸出結果則是去掉標點符號後的string 對象。
消除標點
#include <iostream>
#include <string>
#include <cctype>
using namespace std;
int main()
{
string s, result_str;
bool has_punct = false; //用於標記字符串中有無標點
char ch; //輸入字符串
cout << "Enter a string:" << endl;
getline(cin, s); //處理字符串:去掉其中的標點
for (string::size_type index = 0; index != s.size(); ++index)
{
ch = s[index];
if (ispunct(ch))
has_punct = true;
else
result_str += ch;
}
if (has_punct)
cout << "Result:" << endl << result_str <<endl;
else
{
cout << "No punctuation character in the string?!" << endl;
return -1;
}
return 0;
}