检查位置/路径

时间:2014-05-07 03:44:27

标签: c++

我是C ++的新手,我想尝试一下C ++。通常我来自Java / PHP。

我有一个类似的字符串;

std::string location = "file:///C:/Program Files (x86)/Demo/";

std::string location = "http://www.example.com/site.php";

我如何检查:

  • a locationwww.example.comexample1.com
  • b 使用http://https://
  • 启动域名

在Java或PHP中我会采用正则表达式。但根本不知道如何从C ++开始。

我的第一件事就是检查http://

std::string location = "";

if (strncmp(location.c_str(), "http://", 7)) {
    /* yepp */
} else {
    /* nope */
}

但这不起作用。

我希望你能帮助我。

1 个答案:

答案 0 :(得分:2)

我会以三种方式攻击你的问题,从大多数到最不具体。

1 - 您可以选择在Stack Overflow上提供的建议,而不是重新发明轮子:

Easy way to parse a url in C++ cross platform?

2 - C ++确实完全支持Regexp。您可以参考以下内容作为开头:

http://www.cplusplus.com/reference/regex/regex_search/

3 - 通常,不建议使用str风格的C风格函数来比较字符串。 std :: string类有几个你最好使用的子字符串搜索函数。其中最基本的是:

http://www.cplusplus.com/reference/string/string/find/

希望这可以帮助您走上正轨,无论您选择如何继续。