0 c++
我想删除字符串周围的标点符号,以便字符串:
!dont't?.
Run Code Online (Sandbox Code Playgroud)
将成为:
don't
Run Code Online (Sandbox Code Playgroud)
我似乎只能删除字符串中的所有标点符号:
int len = str.size();
for (int i = 0; i < len; i++){
if (ispunct(str[i])){
str.erase(i--, 1);
len = str.size();
}
}
Run Code Online (Sandbox Code Playgroud)
你们知道一个简单的方法来摆脱前面和后面的所有标点符号吗?
是的,你可以使用boost::trim_if(见工作):
boost::trim_if(str, boost::is_punct());
Run Code Online (Sandbox Code Playgroud)