Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/cplusplus/150.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++_Functional Programming_C++17_Range V3_Std Ranges - Fatal编程技术网

C++ 有没有一种干净的方法可以使用范围分割逗号和空格分隔的单词?

C++ 有没有一种干净的方法可以使用范围分割逗号和空格分隔的单词?,c++,functional-programming,c++17,range-v3,std-ranges,C++,Functional Programming,C++17,Range V3,Std Ranges,我实际上是在改编这部电影 输入:一个字符串,包含逗号分隔的单词,逗号后有空格 输出:单词 我所说的clean是指不依赖于将临时变量存储到变量中的东西,基于代码的意图,这些变量没有存在的理由 我的尝试 包括 包括 包括 包括 包括 包括 包括 auto constexpr为=[]字符c{ return[c]char c_{return c_==c;}; }; 使用名称空间范围::视图; int main { std::字符串ss{cccc iao}; //正确打印[i,a,o] std::cout

我实际上是在改编这部电影

输入:一个字符串,包含逗号分隔的单词,逗号后有空格

输出:单词

我所说的clean是指不依赖于将临时变量存储到变量中的东西,基于代码的意图,这些变量没有存在的理由

我的尝试

包括 包括 包括 包括 包括 包括 包括 auto constexpr为=[]字符c{ return[c]char c_{return c_==c;}; }; 使用名称空间范围::视图; int main { std::字符串ss{cccc iao}; //正确打印[i,a,o] std::coutsplit可以在长度超过一个元素的模式上进行分割。需要注意的一点是,作为一个范围,它是一个包含三个元素的模式,包括终止的空字符,并且在任何情况下,适配器都会将其衰减为指针,这使得它不是一个范围。因此:

自动结果=输入| rv::拆分,sv; split可以在长度超过一个元素的模式上拆分。需要注意的一点是,作为一个范围,它是一个包含三个元素的模式,包括终止的空字符,并且在任何情况下,适配器都会将其衰减为指针,这使得它不是一个范围。因此:

自动结果=输入| rv::拆分,sv;
单词也可以用空格分隔吗?如果不能,你可以只拆分两次。@cigien,你能举个例子吗?我在想拆分“”| join | split“”,但我刚刚尝试过,这个例子不起作用。为什么不能用ranges::for|each和remove擦除空格,然后在什么时候使用split|u?比如;单词也可以用空格分隔吗?如果没有,你可以拆分两次。@cigien,你能举个例子吗?我在想拆分“”| join | split“”,但我只是尝试了一下,这个例子不起作用。为什么不使用范围::for|u each and remove擦除空格,然后使用split|u when?比如;这很优雅;我忘了拆分可以使用范围。这很优雅;我喜欢rgot split可以选择一个范围。