/************************************************************************
函数功能:将字符串中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;
}

常用函数-String的更多相关文章

  1. C++string类常用函数

    C++string类常用函数 string类的构造函数:string(const char *s);    //用c字符串s初始化string(int n,char c);     //用n个字符c初 ...

  2. c++中string的常用函数说明

    string可以说是是字符数组的升级版,使用更加啊方便,不容易出错.本文对string的常用函数进行简单介绍,做到会用即可. string中的常用函数分为四类,即赋值,添加,比较和删除. 一.赋值 1 ...

  3. C#string常用函数总结

    补充:             1:在C语言里 char占1个字节 而在C#,Java里char占两个字节 数据库里char 中汉占两个字节 字母数字占一个字             2:string ...

  4. C++ string 常用函数

    C++ String常用函数 一,类型别名 size_type 无符号整型 iterator 迭代器类型 const_iterator 只读迭代器 reverse_iterator 逆序迭代器 con ...

  5. C++ string 常用函数总结

    头文件:#include<string> [注]:文中关于个数的参数文档中为 size_type 型,更本质是 size_t 型,因为typedef size_t size_type,而 ...

  6. c++ <string.h>中包括哪些常用函数

    常用函数如下:strlen  求字符串长度strcmp  比较2个字符串是否一样strcat           字符串连接操作strcpy            字符串拷贝操作strncat     ...

  7. [转]SQL 常用函数及示例

    原文地址:http://www.cnblogs.com/canyangfeixue/archive/2013/07/21/3203588.html --SQL 基础-->常用函数 --===== ...

  8. phpcms V9 常用函数 及 代码整理

    常用函数 及 常用代码 总结如下 <?php //转换字符串或者数组的编码 str_charset($in_charset, $out_charset, $str_or_arr) //获取菜单 ...

  9. NiosII常用函数整理

    NiosII常用函数整理 IO操作函数函数原型:IORD(BASE, REGNUM) 输入参数:BASE为寄存器的基地址,REGNUM为寄存器的偏移量函数说明:从基地址为BASE的设备中读取寄存器中偏 ...

随机推荐

  1. zookeeper 集群相关配置实践

    一,zookeeper 集群下载及配置 1.1, 准备三台服务器node1,node2,node3. 1.2, [root@liunx local]#yum install -y java #安装ja ...

  2. charles 编辑菜单总结

    本文参考:charles 编辑菜单总结 charles中proxy菜单的介绍:我的是4.1.2版本,mac系统下的菜单大同小异: 如下图: 这里其实都是常用的功能: 大概可以分为5个大块,看下分割线就 ...

  3. php根据经纬度排序,根据经纬度筛选距离段

    SQL 语句:select location.* from (select *,round(6378.138*2*asin(sqrt(pow(sin( (36.668530*pi()/180-px_l ...

  4. 【linux】【sonarqube】安装sonarqube7.9

    前言 SonarQube 是一款用于代码质量管理的开源工具,它主要用于管理源代码的质量. 通过插件形式,可以支持众多计算机语言,比如 java, C#, go,C/C++, PL/SQL, Cobol ...

  5. .Net Core 跨平台:一个简单程序的多平台(windows、Linux、osx)发布

    .Net Core 跨平台:一个简单程序的多平台(windows.Linux.osx)发布 .Net Core 3.0 已于2019年9月23日发布了,包含了一些新特性,具体参见Announcing ...

  6. 88.CSS---Grid 网格布局教程

    grid 兼容性查看请点此处 最新Grid兼容 grid 布局就是给父元素(容器)添加display:grid,然后使子元素(项目)改变布局, 1 2 3 4 5 6 7 8 9 上面九个正方形的代码 ...

  7. js校验对象是否全部为空

    function judgeIsNotBlank(obj) { var bool = true; var arr = Object.keys(obj); ; for(var key in obj){ ...

  8. Linux 文件或文件夹重命名命令mv

    使用命令mv既可以重命名,又可以移动文件或文件夹.例如: 1.将目录A重命名为B mv A B 2.将/a目录移动到/b下,并重命名为c mv /a /b/c 3.将一个名为abc的文件重命名为123 ...

  9. linux查看系统的一些版本号指令

    1.查看系统 [root@iZbp1eoiap1e1jb6pvo390Z ~]# lsb_release -a LSB Version: :core-4.1-amd64:core-4.1-noarch ...

  10. Windows搭建MongoDB复制集

    ​上篇,我们已经知道了什么是MongoDB的复制集,不知道的可以查看上篇哦,传送门来了. 光说不练,假把式,咱来自己搭建一个复制集.先下载安装哦,不知道的查看上篇哦,https://blog.csdn ...