and*_*dre 10 c++ string boost tokenize
我想知道是否有一个方法使用boost :: split来分割一个字符串,使用整个字符串作为分隔符.例如:
str ="xxaxxxxabcxxxxbxxxcxxx"
有没有一种方法来分析这个字符串使用"abc"作为分隔符?因此返回:
结果将是字符串"xxaxxxx"和"xxxxbxxxcxxx"
我使用"is_any_of"谓词知道boost :: split,但是调用"is_any_of("abc")"会导致将字符串拆分为单个字符'a','b'和'c',这不是我想要的.
任何帮助,将不胜感激.
谢谢
是的,有一种方法(这是我知道的一种方式,也许有更好的方法)boost::algorithm::split_regex用于分割字符序列,其中分隔符是正则表达式.
例:
vector< string > result;
boost::algorithm::split_regex( result, str, regex( "^((?!abc)*abc(?!abc)*)*$" ) ) ;
copy( result.begin(), result.end(), ostream_iterator<string>( cout, "\n" ) ) ;
| 归档时间: | 
 | 
| 查看次数: | 8236 次 | 
| 最近记录: |