首页 > 编程语言 >c++ 字符分割截取

c++ 字符分割截取

时间:2024-08-02 22:50:53浏览次数:13  
标签:std 字符 string 截取 c++ tokens token parts include

 

 

#include <iostream>
#include <string>
#include <sstream>
#include <vector>

// 函数用于按照指定分隔符分割字符串
std::vector<std::string> splitString(const std::string &s, char delim) {
    std::vector<std::string> tokens;
    std::stringstream ss(s);
    std::string token;
    while (std::getline(ss, token, delim)) {
        tokens.push_back(token);
    }
    return tokens;
}

int main() {
    std::string fullPath = "/home/dongdong/2project/0data/NWPU/config/config.yaml";
    
    // 按照 '/' 分割字符串
    std::vector<std::string> parts = splitString(fullPath, '/');

    // 获取前面的部分,组装成路径
    std::string result;
    for (int i = 0; i < parts.size() - 1; ++i) {
        result += parts[i] + '/';
    }

    // 打印结果
    std::cout << "Extracted path: " << result << std::endl;

    return 0;
}

  

 

cmake_minimum_required(VERSION 3.5)
project(PathExtraction)

# 设置 C++ 标准
set(CMAKE_CXX_STANDARD 11)
set(CMAKE_CXX_STANDARD_REQUIRED ON)

# 添加可执行文件生成规则
add_executable(PathExtraction main.cpp)

  

标签:std,字符,string,截取,c++,tokens,token,parts,include
From: https://www.cnblogs.com/gooutlook/p/18339767

相关文章

  • 【C++】存储区
    bss段:存放未初始化的全局变量(包括静态全局变量)和初始化为0的全局变量(包括静态全局变量),属于静态分配内存(bss=BlockStartedbySymbol)data段:数据段,用来存放已经初始化且初始化值为非零的全局变量(包括静态变量)text段:通常是指用来存放程序执行代码的一块内存区域。这部分区域......
  • 虚幻五 学习(五)开始写C++代码
    经过正确创建文件现在就有C++文件了   UFUNCTION(BlueprintCallable) voidOpenLobby(); UFUNCTION(BlueprintCallable) voidCallOpenLevel(constFString&Address); UFUNCTION(BlueprintCallable) voidCallClientTravel(constFString&Address);#include"......
  • 【VSCode】C/C++ 自动补全
    1、安装C/C++插件2、进入设置先检查"C_Cpp.intelliSenseEngine"是否为Default。如果是Disable,一定要把它改过来,否则将会在左下方弹出错误提示框,提示:"C_Cpp.intelliSenseEngine"是Disable,没有办法进行提示......
  • 从汇编层面看c/c++函数调用过程
    函数调用分析前置知识:全局变量:在函数内部定义的变量局部变量:在函数外部定义的变量esp:存储当前函数栈底的地址ebp:存储当前函数栈顶的地址对于函数形参(实际上):简单:cpu寄存器中复杂:栈中开空间函数调用机制:局部变量占用的内存是在程序执行过程中“动态”地建立和释放的......
  • 上海计算机学会2022年5月月赛C++乙组T3狼人游戏(二)
    狼人游戏(二)内存限制: 256 Mb时间限制: 1000 ms题目描述有 n 名玩家在玩狼人游戏,有一些玩家的身份是狼人。其余玩家的身份是预言家。游戏的进程中,陆续出现了 m 句发言,每句发言来自于某个玩家,发言的信息是声称另一个玩家的身份是狼人或者是预言家。小爱猜想,狼人的发......
  • C++语法基础之输入输出(易理解巨详细)
    Unit1C++语法基础之基本输入输出本次分享属于C++语法基础系列课,标准输入输出的理解和使用C++语法基础之输入输出标准输入输出介绍(一)输入输出流(概念比较抽象,可先理解代码,回头进行理解性记忆)1、概念2、输入流(InputStreams)3、输出流(OutputStreams)(二)标准输出1、输......
  • C++中const关键字的作用?
    const关键字的作用?const主要用来定义常量和保护变量不被修改:定义常量:使用const可以定义一个不可修改的常量,const常量的默认链接方式是内部链接(只有该源文件可见),可以将其定义在头文件中而不会引起重复定义问题,每个包含该头文件的源文件都各自拥有一个const常量的副本。//......
  • 【C++】引用和指针的不同点
    引用和指针的不同点:(从使用的角度去对比,按自己的理解的角度去梳理,硬记很难记全,虽然不赢记大概率也记不全)1.引用概念上定义一个变量的别名,指针存储一个变量地址。2.引用在定义时必须初始化,指针没有要求。3.引用在初始化时引用一个实体后,就不能再引用其他实体;而指针可以在......
  • 【C++】运算符重载
    一、示例如果我想实现以下代码,按照下面的写法是不能正常运行的。classPerson{public:intm_A;intm_B;};Personp1;p1.m_A=10;p1.m_B=10;Personp2;p2.m_A=10;p2.m_B=10;Personp3;p3=p1+p2;按照以上学过的内容,可以自己写成员函数,实......
  • C++高级功能
    Lambda匿名函数[只读列表](参数列表){函数体}例如:sort(a+1,a+n,[](constData&x,constData&y){returnx.val<y.val;}constintk=5;autocalc=[k](constint&x){returnx*k;}template模板在struct/namespace/函数前加入template<typ......