我有一个要标记的字符串。它的形式是HHmmssff, H, m,s是f数字。
它应该被标记为四个 2 位数字,但我需要它也接受速记形式,就像sff它解释为00000sff. 我想使用boost::tokenizer'soffset_separator但它似乎只适用于正偏移量,我想让它向后工作。
好的,一个想法是从左边用零填充字符串,但也许社区想出了一些超级智能的东西。;)
编辑: 其他要求刚刚开始发挥作用。
更智能的解决方案的基本需求是处理所有情况,如f, ssff,mssff等,但也接受更完整的时间符号,HH:mm:ss:ff如其速记形式,例如s:ff,甚至s:(这应该被解释为s:00)。
在字符串以结尾的情况下,:我显然也可以用两个零填充它,然后去掉所有分隔符,只留下数字并用精神解析结果字符串。
int但是,如果有一种方法可以使偏移标记器从字符串的末尾返回(偏移量 -2、-4、-6、-8)并将数字转换为s ,这似乎会更简单一些。