rust 如何从字符迭代器解析16位十六进制

5gfr0r5j  于 2022-12-19  发布在  其他
关注(0)|答案(1)|浏览(133)

假设我有一个str``s,值为foo004Frtz,我想用迭代器解析这个字符串,目标是最后把004F解析成u16

let it = s.chars().into_iter();

假设it位于正确的位置(第二个o),如何从迭代器解析u16
我试过:

let x = u16::from_str_radix(hex, 16); // Should be set to 79

但是很难从迭代器构造hex

**编辑:**使值更复杂一些。

cotxawn7

cotxawn71#

感谢@Chayim我想出了一个解决方案:

let hex = &it.as_str()[..4];
let x = u16::from_str_radix(&hex, 16).unwrap();

虽然不确定as_str()的效率有多高...

相关问题