C++变量替换

本文介绍了C++中进行变量替换的过程,通过一个测试用例展示了如何将变量值插入到字符串中,例如将变量`ttt`的值`www`和`yyy`的值`seeyou`分别应用于`xxx`和`yyy`占位符上,最终形成路径`/aaa/xxx/bbb/seeyou/ccc`。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

测试用例
4
xxx=lyf/${ttt}/test

ttt=www

yyy=seeyou

aa=/aaa/xxx/bbb/{xxx}/bbb/xxx/bbb/{yyy}/ccc

#include<iostream>
#include<string>
#include<vector>
using namespace std;
string fun(string s1,vector<string> v1){
	string res="";
	int ls=s1.size();
	int l1=v1.size();
	for(int i=0;i<=ls;i++){
		if(s1[i]!='$'){
			res+=s1[i];
			
		}else{
			string temp=s1.substr((i+2),3);
			for(int j=0;j<l1;j++){
				if(v1[j]==temp){
					res+=v1[j+1];
					i+=5;
				}
			}
		}
	}
	
	return res;
}
int main()
{
	int n;
	string str;
	vector<string> v;
	while(cin>>n){
		while(n){
			cin>>str;
			int len=str.size();	
			if(n>1){					
				v.push_back(str.substr(0,3));
				v.push_back(str.substr(4,(len-4)));
			}else{
				string sf=str.substr(4,(len-4));
			
				int len1=sf.size();
				for(int k=0;k<len1;k++){
					if(sf[k]=='$'){
						sf=fun(sf.substr(0,(len1)),v);						
						len1=sf.size();
					}	
				}
				cout<<sf<<endl;
				
				cout<<endl;
			}			
			n--;
		}
	}
	return 0;
}

交卷后的八分钟找到问题出在哪了,哎~~~~

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值