在 std::string 中查找第一个不是空格的字符

Chr*_*ian 4 c++ string stl

可以说我有

std::wstring str(L"   abc");
Run Code Online (Sandbox Code Playgroud)

字符串的内容可以是任意的。

如何在该字符串中找到第一个不是空格的字符,即在这种情况下是“a”的位置?

bil*_*llz 5

使用 [std::basic_string::find_first_not_of][1]功能

std::wstring::size_type pos = str.find_first_not_of(' ');
Run Code Online (Sandbox Code Playgroud)

位置是 3

更新:查找任何其他字符

const wstring delims(L" \t,.;");
std::wstring::size_type pos = str.find_first_not_of(delims);
Run Code Online (Sandbox Code Playgroud)