/************************************************************************
函数功能:将字符串中str的old_value子字符串,替换为new_valud字符串
输入参数:string& str -- 要修改的字符串
const string& old_value -- 要被替换的子字符串
const string& new_value -- 要插入的字符串
输出参数:
返回值 : 返回修改后的字符串
************************************************************************/
string& replace_all(string& str, const string& old_substr, const string& new_substr)
{
try
{
for (string::size_type pos(); pos != string::npos; pos += new_substr.length())
{
if ((pos = str.find(old_substr, pos)) != string::npos)
str.replace(pos, old_substr.length(), new_substr);
else
break;
}
}
catch (...)
{
}
return str;
}
/************************************************************************
函数功能: 计算子字符串substr在字符串str中出现的次数
输入参数: const string& str -- 字符串对象
输出参数: const string& substr -- 要计算其出现次数的子字符串对象
返回值 : 整型值,子字符串对象的出现次数
说明 :
************************************************************************/
int find_num_of_substr(const string& str, const string& substr)
{
int num = ;
string::size_type pos = ;
string::size_type loc = ;
while(pos != string::npos)
{
loc = str.find(substr, pos);
if(loc != string::npos)
{
num++;
pos = loc;
pos += substr.length();
}
else
{
pos = loc;
}
}
return num;
};
/************************************************************************
函数功能: 对于输入的字符串对象,删除其前后的空格,制表符
输入参数: string& s -- 要删除前后空格,制表符的字符串对象
输出参数:
返回值 :
说明 :
************************************************************************/
void DPC::dcs_trim(string& s)
{
int len = s.length();
if(len == )
return;
int pos = -; // trim left
for(int i = ; i < len; ++i)
{
if(s[i] == ' ' || s[i] == '\t')
pos = i;
else
break;
}
if(pos != -)
s.erase(, pos - + ); len = s.length();
if(len == )
return;
pos = - ;
// trim right
for(int j = len - ; j >= ; --j)
{
if(s[j] == ' ' || s[j] == '\t')
pos = j;
else
break;
}
if(pos != -)
s.erase(pos);
};
/************************************************************************
函数功能:将字符串中str的old_value子字符串,替换为new_valud字符串
输入参数:string& str -- 要修改的字符串
const string& old_value -- 要被替换的子字符串
const string& new_value -- 要插入的字符串
输出参数:
返回值 : 返回修改后的字符串
************************************************************************/
string& DPC::replace_all(string& str, const string& old_substr, const string& new_substr)
{
try
{
for (string::size_type pos(); pos != string::npos; pos += new_substr.length())
{
if ((pos = str.find(old_substr, pos)) != string::npos)
str.replace(pos, old_substr.length(), new_substr);
else
break;
}
}
catch (...)
{
}
return str;
}

最新文章

  1. 数据库优化案例——————某市中心医院HIS系统
  2. 安装cocoapods
  3. Java Stax操作XML简介
  4. POJ3294--Life Forms 后缀数组+二分答案 大于k个字符串的最长公共子串
  5. CURD特性
  6. 在.NET Fiddle有趣的沙盒代码
  7. 求n个逆元的O(n)算法
  8. 添加MD5 密码加密
  9. 如何获得mysql数据库的所有的列
  10. idea中自动生成实体类
  11. IEC104协议规约解析
  12. 【备忘】mybatis的条件判断用&lt;choose&gt;
  13. linus 下redis守护进程启动
  14. BarTender 2016如何导出模板为pdf文件?
  15. C 栈实现队列节点的管理
  16. requestAnimFrame 动画的使用方法
  17. JDBC(1)—Connection
  18. learning scala read from file
  19. java项目中常见的异常及处理
  20. [镜像]loop设备及losetup命令介绍

热门文章

  1. 字符串之————图文讲解字符串排序(LSD、MSD)
  2. 解决ie6上碰到的css兼容问题
  3. 36 (OC)* MVC和MVVM
  4. SpringCloud微服务笔记-Nginx实现网关反向代理
  5. 200行代码实现Mini ASP.NET Core
  6. JSP常规内容
  7. SpringBootSecurity学习(05)网页版登录内存中配置默认用户
  8. SpringCloud实现服务间调用(RestTemplate方式)
  9. 链表常见的题型(java实现)
  10. redis列表底层实现之一——链表