String 如何将现有日志语句转换为插值字符串格式?

String 如何将现有日志语句转换为插值字符串格式?,string,scala,intellij-idea,String,Scala,Intellij Idea,我想更改现有语句,例如 log.debug("Value of foo : {}", foo) 改为使用插值字符串格式 log.debug(s"Value of foo : $foo") 尽管IntelliJ对字符串格式之间的转换有一个限制,但它似乎需要首先将现有字符串转换为 "Value of foo ".format(foo) 这首先违背了想要自动更改格式选项的目的(而且对我来说也不能正常工作) 如何轻松格式化这些日志语句以使用字符串插值?是否有任何方法可以批量(在整个项目中)执行此操

我想更改现有语句,例如

log.debug("Value of foo : {}", foo)
改为使用插值字符串格式

log.debug(s"Value of foo : $foo")
尽管IntelliJ对字符串格式之间的转换有一个限制,但它似乎需要首先将现有字符串转换为

"Value of foo ".format(foo)
这首先违背了想要自动更改格式选项的目的(而且对我来说也不能正常工作)


如何轻松格式化这些日志语句以使用字符串插值?是否有任何方法可以批量(在整个项目中)执行此操作?

在IntelliJ中,您可以执行
检查代码
(右键单击->
分析
->
检查代码
)。确保在
检查配置文件中启用
传统字符串格式设置规则。我认为这个规则是Scala插件的一部分


如果启用此规则,可以将其设置为警告、错误或其他选项。当光标位于具有字符串连接的语句上时,始终可以按alt+enter,然后从下拉列表中选择“转换为插值字符串”

注意:尽管我目前正在使用IntelliJ,但我对任何有效的解决方案都持开放态度,无论是Eclipse、TextEdit、命令行脚本等。这对于使用
.format
的字符串应该是一个有用的提示,但对于使用逗号分隔参数的日志语句没有帮助:(这也适用于连接字符串,而不仅仅是
格式的字符串
接受它,因为它回答了我的原始(措辞错误)问题,对于实际问题,我没有更好的答案。