我想在一个字符串中搜索一个不等于 "(",")","!","&","|",";" 的位置。如果我使用if(str[1] != "!" && str[1] != "(" ...)
,它太长了......有什么我可以用它来简化这个吗?
问问题
79 次
3 回答
5
我认为您在谈论find_first_not_of。str.find_first_not_of("!(...")
.
于 2012-10-01T09:54:29.410 回答
5
string badChars = "!()&|;";
if ( badChars.find(str[1]) == string::npos )
{
}
编辑:我想我误解了这个问题。正如 Michael Krelin 指出的那样,find_first_not_of
这可能就是您想要的。
于 2012-10-01T09:54:37.037 回答
2
任何正则表达式引擎都可以通过以下方式匹配:
'([^()!&|;])'
于 2012-10-01T09:56:16.280 回答