问题标签 [messageformat]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
1126 浏览

java - 使用 MessageFormat 转义双引号

我有以下 JSON 格式的字符串:

但我想将其设置为使用 MessageFormat:

我知道 MessageFormat 使用单引号与反斜杠来转义字符,但我没有看到在这里使用反斜杠的方法,因为我需要消息中的双引号并且没有反斜杠,未转义的双引号会破坏字符串。

知道如何让它工作吗?

0 投票
1 回答
238 浏览

java - 为任何双精度生成本地化、全精度输出的 MessageFormat 模式是什么

给定示例代码:

我使用什么作为格式字符串,以便获得任何双精度值的全精度输出并且输出是本地化的?例如,当前代码的输出是:

String.valueOf(double)正确打印完整的精度,但它不是消息格式,也没有本地化。消息格式决定该值太小而无法打扰。对于大量数字,结果甚至更糟!MessageFormat打印 16 个有效数字,然后附加一堆不能准确反映存储在双精度值中的零。例如,pi * 1e100我得到:

0 投票
2 回答
136 浏览

java - 使用 MessageFormat 创建 ASCII 温度计

我正在使用 Java 的MessageFormat类来创建一个字符串,该字符串使用该format方法将多个条件语句作为参数。有了它,我创建了一个使用 ASCII 字符的温度计,它接受一个随机数作为摄氏度,并根据该数字,根据条件在特定位置将星号字符插入到字符串中,例如((celsius >= 25) ? "*" : " ")。换句话说,星号代表温度计中的温度水平,具体取决于温度值。

ASCII 温度计

目前,我在 14 个参数中的每一个参数中都使用了类似的 if 语句,然后确定它是否应该在所述位置添加星号temp >= location或空白空间temp <= location。我确信使用另一种方法(例如嵌入式 for 循环、正则表达式、函数、内置方法等)有一种更有效和更清洁的方法。

这是代码示例(注意转义字符):

0 投票
0 回答
55 浏览

java - 如何在java中打印jtable的完整数据

我这样做是为了在数据为一页时在打印机上打印数据它工作正常但是当数据增加意味着 3 或 5 页时它打印异常线程“AWT-EventQueue-0”中的异常

0 投票
2 回答
140 浏览

c# - C# 从消息格式字符串中查找特定值

给定一个消息格式字符串,str如下所示。我希望能够获得用于显示文本值的“通知”和“名称”值。

我尝试过使用正则表达式,例如:

但是上面没有考虑到它{notifications,..本身包含在花括号中,并且包含了不需要的内部值,这些值也包含在花括号中。

所以简而言之,我只想能够解析上面的字符串并在返回值处str获取notifications& 。name

像这样的字符串var str2 = @"Hello {name}"应该只是name作为值返回。

编辑

notifications&name不会提前知道 - 我只是以此为例,对于我需要从字符串返回的值。

0 投票
1 回答
87 浏览

java - 有没有办法获取 MessageFormat 对象模式的最大索引参数?

有没有办法获取 MessageFormat 对象模式的最大索引参数?例如:

  1. "Dear {0}, some text {0} text"-> 1
  2. "Dear {0}, some text {1} text"-> 2
  3. "{0,choice,0#0 User|1#User|1<{1} Users}"-> 2
0 投票
1 回答
596 浏览

java - 如何使用带有布尔值的 Java MessageFormat 选项?

假设我想说“您的订单符合折扣条件”或“您的订单不符合折扣条件”。

我假设我可以choice在 MessageFormat 中使用带有布尔值的 a,例如

但我得到了错误

当然,还有很多其他方法可以实现这一点,但是 MessageFormat 选项不支持布尔值吗?

0 投票
4 回答
36 浏览

java - 提供所需输出的消息格式

我正在尝试用一个值替换字符串中的{0} 。我为它编写的代码是:

它给出的输出为:{0}

请让我知道我做错了什么。

0 投票
1 回答
79 浏览

java - 使用 MessageFormat 生成 where 子句

我想使用 MessageFormat 生成 SQL,以便许多用户可以使用相同的字符串,他们只需要传递 where 子句参数。

例如,我想从用户中选择 *,其中 name='John' and age=15 and area='JStreet'

我可以使用 MessageFormat.format(select * from user where {0}={1} and {2}={3} and {4}={5} ,"name","'John'","age ","15","面积","'JStreet'")

但我希望它是动态的。意味着在这里我被限制到 {0}-{5} 如果我需要添加更多 AND 条件怎么办。我怎样才能做到这一点 ?

0 投票
1 回答
191 浏览

java - Java MessageFormat 无法格式化特定字符串

我有一个声明如下的常量:

然后我使用 MessageFormat:

在这种情况下,MessageFormat 无法格式化声明为常量的字符串:

在此处输入图像描述

这不适用于其他情况,例如:

这工作得很好:

在此处输入图像描述

为什么我会出现这种奇怪的行为?我该如何解决?

提前致谢。