如何在字符串中找到字符,然后在C++中提取其余的字符串

How do I find character in string and after that I extract the rest of string in C++

本文关键字:字符串 提取 C++ 然后 字符      更新时间:2023-10-16

所以我的问题是下一个: 我输入了youtube链接作为输入,我应该打印youtubeID作为输出。

所以,也许我有这个链接:https://www.youtube.com/watch?v=szyKv63JB3s,我应该打印这个"szyKv63JB3s",所以我得出的结论是我需要在用户输入的字符串中找到" = ",我应该寻找制作名为"ytID"或"result"的新字符串,并从我发现" = "字符的那一刻起存储youtubeID。

所以我真的不知道应该怎么做... 我的意思是我应该通过字符串 for 循环,然后我应该存储将称为 youtubeID 的部分,我在那里有问题,因为我不知道那个链接有多长,我的意思是它有多少字符,所以我不能真正使用 for 或 while 循环......

附言这不是家庭作业,我只是想练习。 :)

你应该看看这篇文章: 删除字符(以及字符(之后的所有内容

解决方案可以像以下那样简单:

theString.substr( theString.find('=') ) ;

只需搜索您在问题中提到的字符=

#include <iostream>
#include <string_view>

std::string_view extractYoutubeId(std::string_view const link) {
auto const off = link.find('=');
if (off == std::string_view::npos)
return std::string_view{};
return link.substr(off + 1);
}
int main() {
auto const& link = "https://www.youtube.com/watch?v=dQw4w9WgXcQ";
std::cout << extractYoutubeId(link);
}

输出:dQw4w9WgXcQ