我想知道是否存在使用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/