4

我无法弄清楚如何在 groovy 中将字符串转换为驼峰式大小写。假设我从一个看起来像“1-800 FOO.BAR”的字符串开始。最终,我希望它变成“1800FooDotBar”。通过执行以下操作,我已经能够获得 1800FOODotBar:

String str = "1-800 FOO.BAR"
String tempStr = str.replaceAll(/(?i)\.com/, "DotCom")
String newStr = tempStr.replaceAll(/\\W/, "")

我只是不确定如何摆脱中间的那些大写字母。我遇到了一些关于应该能够提供帮助的 capitalize() 方法的信息,但我只是对 Groovy 不够熟悉,不知道如何使用它。我想我需要将字符串拆分为每个单词的单独字符串,然后将每个字符串的第一个字母大写,但是我该如何构建最终结果呢?我知道有人问过类似的问题,但我只是不知道如何获取这些信息并从中制作完整的 Groovy 代码。提前致谢!

4

1 回答 1

13

非常粗略:

String str = "1-800 FOO.BAR"
println str.replaceAll(/\./, " Dot ").split(/[^\w]/).collect { it.toLowerCase().capitalize() }.join("")
=> 1800FooDotBar
于 2013-06-25T21:26:43.560 回答