首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >linux中的C++ - grep路径

linux中的C++ - grep路径
EN

Stack Overflow用户
提问于 2015-09-04 20:14:17
回答 2查看 56关注 0票数 0

我是linux的新手,我想知道如何获取以下格式的路径- /home/linux/sample/

我想写一个c++函数,它接受路径作为输入,并返回true,就好像路径有/home/linux/sample/一样。

示例:

如果路径为/home/linux/sample/test.txt,则应返回true

如果路径为/home/linux/sample/dir,则应返回true

如果路径为/home/linux/user/test.txt,则应返回false

谁能帮帮我?

提前谢谢。

EN

回答 2

Stack Overflow用户

发布于 2015-09-04 20:20:16

要编写这样的函数,只需std::string:

代码语言:javascript
复制
string str ("There are two needles in this haystack.");
string str2 ("needle");

if (str.find(str2) != string::npos) {
//.. found.
} 

如果算法会变得比我更复杂,我会转向正则表达式。

票数 1
EN

Stack Overflow用户

发布于 2015-09-04 20:32:15

看起来你正在尝试检查一个字符串是否是另一个字符串的前缀。在这种情况下,您可以依赖<algorithm>std::equal

代码语言:javascript
复制
std::string prefix = "/home/linux/sample/";
std::string path0 = "/home/linux/sample/test.txt";
if(std::equal(prefix.begin(), prefix.end(), path0.begin())) {
...
}

prefix末尾的/很重要!

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/32397821

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档