1

我需要一种从fmt::format格式字符串中检索“宽度”参数的方法。

不想要很容易提取的格式操作的结果大小auto size = fmt::formatted_size("{:>5.2f}", 13453453.76345f);

fmt::format("{:>5.2f}", 13.23454f);
//              ^
//     I want this number (5)

我期待这样的事情

auto width = fmt::with_arg("{:>5.2f}");
assert(width == 5);

而且......如果它也适用于整数,那就太好了:

fmt::format("{:>4d}", 42);
//              ^
//     I want this number (4)
4

1 回答 1

0

不,宽度在内部用于确定填充量。它不是通过任何公共 API 提供的。您可以使用parse_format_string解析格式字符串并获取宽度,但这是一个内部函数。

于 2020-07-10T04:07:18.823 回答