将字母的第一个字母大写

时间:2013-06-25 21:07:02

标签: regex string groovy

我无法弄清楚如何在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/, "")

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

1 个答案:

答案 0 :(得分:11)

非常粗略:

String str = "1-800 FOO.BAR"
println str.replaceAll(/\./, " Dot ").split(/[^\w]/).collect { it.toLowerCase().capitalize() }.join("")
=> 1800FooDotBar