常州电工培训

常州电工证

常州变频器培训

常州触摸屏培训

江苏和讯自动化设备有限公司欢迎您!
  • 和讯PLC,电工培训中心优势,名师团队一对一教学.
热门课程
联系方式
  • 常州和讯自动化培训中心
  • 常州市新北区太湖东路府琛大厦2号楼307-1室,307-2室(常州万达广场对面)
  • 电话:0519-85602926
  • 手机:15861139266 13401342299
当前位置:网站首页 > 新闻中心 新闻中心
OpenCV开发中C++字符串操作实用集锦-常州机器视觉学习,常州上位机学习
日期:2023-12-27 14:57:20人气:  标签:常州机器视觉学习 常州上位机学习

 

C++11中有个字符串类std::string,OpenCV开发中你遇到所有关于字符串的问题,都可以通过这个类来解决。特别好用!


相关函数说明


首先看一下这个类比较有用的函数操作都有哪些:


字符串进入的相关函数:

9.png

字符串内容修改的相关函数:

10.png

字符串操作的相关函数:

11.png

用法演示


用法演示涵盖各种字符串常编程应用包括检查文件扩展名称、截取,查找字符串、拼接字符串、把这种其它类型数据转换为字符串std::tostring这个方法是万能的。演示代码如下:


// 初始化字符串

std::string mystr("this is OpenCV学堂 ");

std::string by = "created by gloomyfish";

std::cout << mystr << std::endl;


// 拼接字符串,计算长度

std::string str2 = mystr + by;

for (int i = 0; i < 4; i++) {

    str2.append("!");

}

std::cout << str2 << std::endl;

std::cout << "str2's length: "<<str2.length()<< std::endl;


// 寻找字符串

int pos = mystr.find("学堂", 0);

std::cout << "位置:"<<pos << " 截取: " <<mystr.substr(pos, 4)<<std::endl;


// 检查图象文件扩展名称

std::string lena = "D:/images/lena.jpg";

int t = lena.find_last_of('.');

std::string extName = lena.substr(t + 1);

if (extName == "jpg") {

    std::cout << lena << std::endl;

}


// 字符串各种拼接,把数值转换为字符串, std::tostring是万能方法

std::string mystr3 = mystr + std::to_string(12.3344);

std::cout << mystr3 << std::endl;



检查字符串中都是数字与返回浮点数部分函数,利用字符串操作完成:


string returnFloatingPart(string str)

{

    int pos = str.find(".");

    if (pos == string::npos)

        return "";

    else

        return str.substr(pos + 1);

}


bool containsOnlyDigit(string str)

{

    int l = str.length();

    for (int i = 0; i < l; i++)

    {

        if (str.at(i) < '0' || str.at(i) > '9')

            return false;

    }

    //  if we reach here all character are digits

    return true;

}

本文网址:

相关信息:
版权所有 CopyRight 2006-2017 江苏和讯自动化设备有限公司 电话:0519-85602926 地址:常州市新北区太湖东路府琛大厦2号楼307-1室,307-2室
苏ICP备14016686号-2 技术支持:常州鹤翔网络
本站关键词:常州电工培训 常州电工证 常州变频器培训 常州触摸屏培训 网站地图 网站标签
在线与我们取得联系