字符串替换

//字符串替换
string replace_all_distinct(string&   str, const   string&   old_value, const   string&   new_value)
{
	for (string::size_type pos(0); pos != string::npos; pos += new_value.length()) {
		if ((pos = str.find(old_value, pos)) != string::npos)
			str.replace(pos, old_value.length(), new_value);    //用new_value替换str中从pos开始(包括0)的old_value.length()个字符的子串
		else   break;
	}
	return  str;
}

//字符串替换
//int StrReplace(char strRes[], char from[], char to[]) {
//	int i, flag = 0;
//	char *p, *q, *ts;
//	for (i = 0; strRes[i]; ++i) {
//		if (strRes[i] == from[0]) {
//			p = strRes + i;                         //p为从替换的第一个字符开始后面所有的字符串,例如you are cute,are换成is,p为are cute
//													//printf(p);
//			q = from;
//			while (*q && (*p++ == *q++));
//			if (*q == '\0') {
//				ts = (char *)malloc(strlen(strRes) + 1);  //malloc函数用于向操作系统申请内存,声明在stdlib.h中, 
//														  //并将指针转换为char *类型赋值给ts,申请的大小为(strlen(strRes) + 1)。
//				strcpy(ts, p);                           //字符串复制,p为cute
//				strRes[i] = '\0';
//				strcat(strRes, to);                  //字符串链接,strRes为"you ",设strRes[i] = '\0';即是把后面的截断
//				strcat(strRes, ts);
//				//	printf("strRes2%s\n", strRes);
//				free(ts);
//				flag = 1;
//			}
//		}
//	}
//	return flag;
//}


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值