我想知道是否存在使用boost::split的方法来使用整个字符串作为分隔符来拆分字符串。例如:

str = "xxaxxxxabcxxxxbxxxcxxx"

有没有一种方法使用"abc"作为分隔符来拆分此字符串?因此返回:

结果将是字符串"xxaxxxx""xxxxbxxxcxxx"

我知道使用boost::split谓词的"is_any_of",但是调用is_any_of("abc")也会导致在单个字符“a”,“b”和“c”处拆分字符串,这不是我想要的。

最佳答案

@Mythli建议的split_regex很好。如果您不想处理正则表达式,则可以使用ifind_all算法,如此example所示。您会收到所有出现的定界符iterator_range(开头/结尾)。您的 token 位于它们之间(以及字符串的开头和结尾)。

关于c++ - 使用整个字符串作为分隔符的Boost::Split,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/7436968/

10-11 00:39
查看更多