我可以在 java MessageFormat 中转义大括号吗?
我想以 java MessageFormat 输出一些大括号。 例如,我知道以下内容不起作用:
MessageFormat.format(" public {0} get{1}() {return {2};}\n\n", type, upperCamel, lowerCamel);
是否有一种方法可以转义“return {2}”周围的大括号?
I want to output some braces in a java MessageFormat. For example I know the following does not work:
MessageFormat.format(" public {0} get{1}() {return {2};}\n\n", type, upperCamel, lowerCamel);
Is there a way of escaping the braces surrounding "return {2}"?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(5)
您可以将它们放在单引号内,例如
请参阅此处 了解更多详情。
You can put them inside single quotes e.g.
See here for more details.
MessageFormat 的文档知道答案:
The documentation for MessageFormat knows the answer:
使用单引号:
如果您想实际使用单引号,只需将其加倍即可。 JavaDoc for
MessageFormat
给出了这个有点复杂的例子:这是用于单引号的
''
,然后是用于转义大括号的'{'
,然后是0
、'}' 表示右大括号,
''
表示右引号。Use single quotes:
If you want to actually use a single quote, just double it. The JavaDoc for
MessageFormat
gives this somewhat complicated example:This is
''
for a single quote, then'{'
for an escaped brace, then0
,'}'
for the closing brace and''
for the closing quote.您可以将此正则表达式与 perl 或任何其他语言一起使用来转义大括号和单引号 (x27)。 它不会触及任何占位符,例如
{0}
:you can use this regex with perl or any other language to escape curly brackets and single quotes (x27). It does not touch any placeholder e.g.
{0}
: