zoukankan      html  css  js  c++  java
  • 编写一个函数,接受三个string参数,s,oldVal和newVal。使用迭代器及insert和erase函数将s中所有oldVal替换为newVal。测试你的程序,用他替换通用的简写形式,如,将“tho”,将“”“”

    // test14.cpp : 定义控制台应用程序的入口点。
    //

    #include "stdafx.h"
    #include<iostream>
    #include<fstream>
    #include<string>
    #include<cctype>
    #include <vector>
    #include<exception>
    #include <initializer_list>
    #include<stack>
    #include <algorithm>
    
    using namespace std;
    class Solation
    {
    public:
    	string fun(string &s,string oldVal,string newVal)
    	{
    	string:size_t pos = 0;
    		while (pos<s.length())
    		{
    		pos = s.find(oldVal, pos);//从零号位置开始查找
    			if (pos >= s.length()) break;//如果没有找到退出循环
    
    			s.erase(pos,oldVal.length());//如果找到,先删除原来的字符
    			s.insert(pos,newVal);//添加新的字符
    
    	       //s.replace(pos,oldVal.length(),newVal);//和上面两句是等价的
    
    			pos = pos + newVal.length();//移动pos位置
    		}
    		cout << s<< endl;
    		return s;
    	}
    
    };
    
    int main()
    {
    	string s = "WangDanPiaoLiang!";
    	string oldVal = "Dan";
    	string newVal = "dandan";
    
    	Solation so;
    	//so.fun(s,oldVal,newVal);
    
    	cout << endl;
    	
    	string str = so.fun(s, oldVal, newVal);
    
    	cout << str<< endl;
    	return 0;
    }
  • 相关阅读:
    周二
    周末
    简单I/O
    格式输出(1)
    c语言—变量
    水仙花数
    控制语句—循环语句
    mysql6数据库安装与配置
    如何解决Tomcat端口号被占用
    eclipse配置tomcat详细步骤
  • 原文地址:https://www.cnblogs.com/wdan2016/p/5961145.html
Copyright © 2011-2022 走看看