Problem L: 字符替换

Memory Limit:128 MB Time Limit:1.000 S
Judge Style:Text Compare Creator:
Submit:17 Solved:6

Description

对输入的一句子实现查找且置换的功能,句子长度不超过255个字符。

Input

第一行:一个字符串构成的句子。
第二行:要查找的字符串。
第三行:用来替换的字符串。

Output

替换后的字符串。

Sample Input Copy

123123123123
123
456

Sample Output Copy

456456456456

HINT

stringfind()函数用于找出字母在字符串中的位置。

find(str,position)

str:是要找的元素

position:字符串中的某个位置,表示从从这个位置开始的字符串中找指定元素(不填第二个参数,默认从字符串的开头进行查找)

返回值为目标字符的位置(第一个字符位置为0),当没有找到目标字符时返回string::npos即为-1

举例

//找到目标字符的位置

string s = "hello world!";

cout << s.find("e") << endl;

输出结果:1

//未找到目标字符

string s = "hello world!";

if (s.find("a") == string::npos) {

    cout << "not found" << endl;

}

输出结果:not found

//指定查找位置

string s = "hello world!";

cout << s.find("l",5) << endl;

输出结果:9



C++中的string类提供了replace()函数,用于替换字符串中的子串。其函数原型如下:
string replace (size_t pos, size_t len, const string& str);
其中,pos表示要替换的子串在原字符串中的起始位置,len表示要替换的子串的长度,str表示用来替换的字符串。
replace()函数的使用方法非常简单,只需要传入要替换的子串的位置、长度和替换字符串即可。下面是一个示例:

#include <iostream>
#include <string>
using namespace std;
int main()
{
    string str = "hello world";
    str.replace(0, 5, "hi");
    cout << str << endl; // 输出:hi world
    return 0;
}

在上面的示例中,将字符串中的"hello"替换为"hi",得到了"hi world"这个新的字符串。

Source/Category