Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/cplusplus/156.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C++ 如何从c+中的字符串中删除前缀或后缀+;?_C++_String_Prefix_Suffix - Fatal编程技术网

C++ 如何从c+中的字符串中删除前缀或后缀+;?

C++ 如何从c+中的字符串中删除前缀或后缀+;?,c++,string,prefix,suffix,C++,String,Prefix,Suffix,还有一些人问起了这个问题 但是,还没有询问如何从C++中删除字符串中的前缀或后缀。假设我们知道一个给定的字符串以一个特定的前缀/后缀开头,那么可以使用一些专门的方法 那么:鉴于以下情况,我们如何删除前缀和后缀 std::string prefix=“prefix.”; std::string suffix=“.suffix”; std::string full_string=“prefix.content.suffix”; std::字符串正好位于中间=???; 因为我们提前知道完整字

还有一些人问起了这个问题

但是,还没有询问如何从C++中删除字符串中的前缀或后缀。假设我们知道一个给定的字符串以一个特定的前缀/后缀开头,那么可以使用一些专门的方法

那么:鉴于以下情况,我们如何删除前缀和后缀

std::string prefix=“prefix.”;
std::string suffix=“.suffix”;
std::string full_string=“prefix.content.suffix”;
std::字符串正好位于中间=???;

因为我们提前知道
完整字符串
以前缀/后缀开始/结束,所以可以使用
std::string::substr

std::string prefix=“prefix.”;
std::string suffix=“.suffix”;
std::string full_string=“prefix.content.suffix”;
//前缀删除
std::string result1=full_string.substr(prefix.length());
//后缀删除
std::string result2=full_string.substr(0,full_string.length()-suffix.length());

当您知道如何删除任意子字符串时,您也知道如何删除前缀/后缀,否?是的,删除任意子字符串的技术确实可以删除前缀/后缀。然而,给定移除前缀/后缀的技术,这些技术不一定能够移除任意子字符串。我在这里的目的是收集专门用于删除前缀/后缀的技术,这可能涉及比适用于任意子字符串的技术更干净/更清晰的代码。抱歉,但它们不(涉及更干净/更清晰的代码)。关于“如何删除任意性?”的公认答案是关于删除后缀的(问题也一样,只是标题更一般)。你链接的帖子实际上比你在这篇帖子上的答案更适合删除后缀。