#include <iostream>
#include <algorithm>
#include <functional>
using namespace std; class Teststring
{
public: void Toupper(string& str); //转大写
void Tolower(string& str); //转小写
void TrimRight(string& str); //去除后面的空格
void TrimLeft(string& str); //去除前面的空格
void DeleteChar(string& str,char ch); //去掉字符串里某个字符,注意,是都去掉
void TestReplace(); //替换字符串里的某一段字符 例如 abcdef 将ab替换成cd
bool StartWith(const string& str,const string& strStart); //字符串以某段开头
bool EndWith(const string& str,const string& strEnd); //字符串以某段结尾
void TestReverse(); //翻转字符串
}; void Teststring::Toupper(string& str)
{
transform(str.begin(),str.end(),str.begin(),::toupper);
} void Teststring::Tolower(string& str)
{
transform(str.begin(),str.end(),str.begin(),::tolower);
} void Teststring::TrimLeft(string& str)
{
str.erase(,str.find_first_not_of(' '));
}
void Teststring::TrimRight(string& str)
{
str.erase(str.find_last_not_of(' ')+);
} void Teststring::DeleteChar(string& str,char ch)
{
str.erase(remove_if(str.begin(),str.end(),bind2nd(equal_to<char>(), ch)),str.end());
} void Teststring::TestReplace()
{
string str = "abcdef";
string strSub = "ab";
str.replace(str.find(strSub),strSub.size(),"cd");
cout<<str.c_str()<<endl;
} bool Teststring::StartWith(const string& str,const string& strStart)
{
if(str.empty() || strStart.empty())
{
return false;
} return str.compare(,strStart.size(),strStart)==?true:false;
} bool Teststring::EndWith(const string& str,const string& strEnd)
{
if(str.empty() || strEnd.empty())
{
return false;
}
return str.compare(str.size()-strEnd.size(),strEnd.size(),strEnd)==?true:false;
} //翻转汉字的过程中,会出现乱码,因为该方法是按char进行翻转的
void Teststring::TestReverse()
{
string str1 = "张东升";
std::reverse(str1.begin(),str1.end());
string str2 = "";
str2.assign(str1.rbegin(),str1.rend()); }

转自:

https://blog.csdn.net/kwsy2008/article/details/11533329

最新文章

  1. WebApi接口 - 响应输出xml和json
  2. timer控件、三级联动
  3. linux crontab -r 导致no crontab for root的原因及解决方案
  4. Ubuntu优化-py用机器
  5. explain分析查询
  6. 【BZOJ】【3275】Numbers
  7. DirectUI实现原理
  8. JS框架设计读书笔记之-节点模块
  9. JAVA面试之集合框架(三)
  10. Android开发--Service和Activity通过广播传递消息
  11. Windows 系统判断MD5 值的办法
  12. 【SQL 代码】SQL 语句记录(不定时更新)
  13. Docker Mysql数据库主从同步配置方法
  14. Python学习笔记(二)——数据类型
  15. 转:&quot;为自动填充列调整大小期间不能执行此操作&quot;解决办法 .
  16. python 按照自然数排序遍历文件 python os.listdir sort by natural sorting
  17. mysql常用函数汇总(分享)
  18. POJ-3744-概率dp+矩阵幂(分段)
  19. java 包(package)
  20. windows下安装rabbitmq的php扩展amqp(原创)

热门文章

  1. Java 常见摘要算法——md5、sha1、sha256
  2. c++使用cmake创建dpdk项目
  3. kettle变量(var变量)
  4. iOS NSInteger 的输出 %d %ld %zd %ld (long)
  5. 《AutoCAD Civil 3D .NET二次开发》勘误2
  6. 「ZJOI Day2」游记
  7. 学习STM32F769DK-OTA例程之百度云平台建立MQTT服务器
  8. [wikichip]zen架构图
  9. [BJOI2017]树的难题
  10. Eureka 配置