【问题标题】:C++ Replace given word console applicationC ++替换给定的单词控制台应用程序
【发布时间】:2022-01-31 22:47:04
【问题描述】:

我想用另一个词替换句子中的一个词。

#include <iostream>
#include <string>

using namespace std;

int main()
{
string str;
getline(cin, str);
cout << "Original text: " << str;
for (int j = 0; j < (int)str.size(); j++) {
    string key = str.substr(j, 7), repl;
    if (key == "ronaldo") {
        repl = "messi";
        for (int k = 0; k < 5; k++) {
            str[j + k] = repl[k];
        }
    }
}
cout << "\nNew text: " << str << endl;

   return 0;
}

原创 --> “世界上最好的足球运动员罗纳尔多将成为今年的冠军。”

New Sentence -> 世界上最好的足球运动员 messi 将成为今年的冠军。” 罗纳尔多 --> 梅西

使用 str.subst 时出现错误

【问题讨论】:

  • 你认为这行会发生什么:string key = str.substr(j, 7), repl;jstr.size() - 1 时?
  • 罗纳尔多-->梅西多,但我想要罗纳尔多-->梅西
  • “我收到一个错误”您遇到什么错误?
  • 我想更改我选择的字符串 (ronaldo) 的 7 索引。如果有其他方法可以分享给我吗?
  • 错误的输出是预期的输出-> messi 输出-> messido

标签: c++ replace


【解决方案1】:

只要把你想改变的词变成一个字符串变量,让用户输入字符串变量的数据。

【讨论】:

  • 尝试添加一个代码示例,也许可以详细说明一下。事实上,这个答案没有用。
  • 对不起,我可以,但我现在没有笔记本电脑,所以我只能在手机上
猜你喜欢
  • 1970-01-01
  • 2012-07-09
  • 2018-03-18
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2014-01-17
  • 1970-01-01
相关资源
最近更新 更多