我目前正在使用以下代码对我的程序中的所有 std::strings
进行右修剪:
std::string s;
s.erase(s.find_last_not_of(" \n\r\t")+1);
它工作正常,但我想知道是否有一些最终情况可能会失败?
当然,欢迎使用优雅的替代方案和左修剪解决方案的答案。
原文由 Milan Babuškov 发布,翻译遵循 CC BY-SA 4.0 许可协议
我目前正在使用以下代码对我的程序中的所有 std::strings
进行右修剪:
std::string s;
s.erase(s.find_last_not_of(" \n\r\t")+1);
它工作正常,但我想知道是否有一些最终情况可能会失败?
当然,欢迎使用优雅的替代方案和左修剪解决方案的答案。
原文由 Milan Babuškov 发布,翻译遵循 CC BY-SA 4.0 许可协议
3 回答2k 阅读✓ 已解决
2 回答3.9k 阅读✓ 已解决
2 回答3.2k 阅读✓ 已解决
1 回答3.2k 阅读✓ 已解决
1 回答2.7k 阅读✓ 已解决
3 回答3.4k 阅读
1 回答1.6k 阅读✓ 已解决
使用
std::find_if_not
和反向迭代器(无 +1/-1 调整)并返回修剪的空格数