C++截取std::string的一部分并赋值给另一个。

huangapple go评论78阅读模式
英文:

C++ cut out part of std::string and assign another one

问题

Sure, here is the translated code portion:

我想获取 std::string 的一部分,将该部分赋值给另一个空的 std::string,然后从原始字符串中删除该部分。我想知道如何在一行中完成这个操作?

是否有字符串方法可以做类似的事情?->

std::cout << oldStr; // "Hello world!";

std::string newStr = oldStr.someMethod("Hello");

std::cout << newStr; // "Hello"
std::cout << oldStr; // " world!";

请注意,这里的 oldStr.someMethod("Hello") 是一个示例,实际上需要使用适当的代码来实现这个操作,这不是标准字符串方法的一部分。

英文:

I want to get part of a std::string, assign that part to another empty std::string, and then remove that part from the original string. I wonder how to do it in one line?

Is there any string methods to do something like that ? ->

std::cout &lt;&lt; oldStr; // &quot;Hello world!&quot;;

std::string newStr = oldStr.someMethod(&quot;Hello&quot;);

std::cout &lt;&lt; newStr; // &quot;Hello&quot;
std::cout &lt;&lt; oldStr; // &quot; world!&quot;

答案1

得分: 3

If you know the exact string you can use the substring method substr

std::string oldStr = "Hello world!";

std::cout << oldStr << std::endl; // "Hello world!"

std::string newStr = oldStr.substr(0, 5);
oldStr = oldStr.substr(6);
    
std::cout << newStr << std::endl; // "Hello"
std::cout << oldStr << std::endl; // " world!"
英文:

If you know the exact string you can use the substring method substr

std::string oldStr = &quot;Hello world!&quot;;

std::cout &lt;&lt; oldStr &lt;&lt; std::endl; // &quot;Hello world!&quot;

std::string newStr = oldStr.substr(0, 5);
oldStr = oldStr.substr(6);
    
std::cout &lt;&lt; newStr &lt;&lt; std::endl; // &quot;Hello&quot;
std::cout &lt;&lt; oldStr &lt;&lt; std::endl; // &quot; world!&quot;

huangapple
  • 本文由 发表于 2023年5月13日 07:30:14
  • 转载请务必保留本文链接:https://go.coder-hub.com/76240466.html
匿名

发表评论

匿名网友

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen:

确定