我有一个10位数字,需要显示为格式化的电话号码。
Eg: 1234567890 needs to be formatted in (123) 456-7890
我尝试使用freemarker中的数字内置函数对其进行格式化,但不知何故仍然无法以预期的格式获取它。
答案 0 :(得分:1)
我认为Java SimpleNumberFormat
模式不可能,这就是FreeMarker在编写像'0.##'
这样的东西时所使用的模式。但是自定义数字格式没有限制(参见http://freemarker.org/docs/pgui_config_custom_formats.html),就像你可以使用${n?string.@phone}
那样可以执行所有类型的Java逻辑。
但是,我想指出,数据模型本身可能存在问题。实际上,电话号码不是数字,而是蜇(甚至是结构)。它们中可能包含重要字符,例如+
(甚至#
)。更不用说/
了,如果你必须拨打分机号。