将Camel cased String转换为Velocity或IntelliJ文件模板中的蛇形案例或破折号案例

时间:2017-03-29 05:38:05

标签: intellij-idea velocity

我想改变像#34; RoomAvailability"的骆驼套装字符串。一个"破折号"字符串"房间可用性"使用Apache Velocity的IntelliJ文件模板中的速度。

我发现了几十个帖子,询问从蛇案到骆驼案,这对e来说没问题。 G。 #set($name = ${StringUtils.removeAndHump("room_availability")})导致RoomAvailability。

另一种可能性是将驼峰盒转换为蛇盒,然后替换“#”;'用' - '通过 #set($replaced = ${snake_cased_name("_", "-")}) 但我也错过了将字符串转换为蛇案的可能性。

有没有选择在IntelliJ文件模板和Velocity中做类似的事情?

1 个答案:

答案 0 :(得分:3)

我还找到了解决方案。作为一个随时可用的功能并不是很优雅,但是,它可以工作。

#set( $regex = "([a-z])([A-Z]+)")
#set( $replacement = "$1-$2")
#set( $toDash = $NAME.replaceAll($regex, $replacement).toLowerCase())
...
${toDash}

来自JetBrains的Elena Pogorelova致信enter link description here