6

我想找到复数+-复数的位置,例如

x + y*i 

x - y*i

通常,我会这样做:

int found = str.find("+");
if (found != string::npos)
    cout << "'+' also found at: " << found << endl;


found = str.find("-");
if (found != string::npos)
    cout << "'-' also found at: " << found << endl;

如何find在一次运行中提供多个选项来查找?

4

2 回答 2

18

使用std::string::find_first_of()

size_t found = str.find_first_of("+-");

其中(来自链接的参考页面):

查找与给定字符序列中的一个字符相等的第一个字符。搜索从 pos 开始,即找到的字符不能位于 pos 之前的位置。

于 2012-12-04T10:05:09.013 回答
1

使用find_first_of().

这是std::string方法的参考。 http://www.cplusplus.com/reference/string/string

于 2012-12-04T10:09:08.740 回答