文字を大文字・小文字に変換する

すべてを大文字・小文字に変換する

groovy:000> "aBcDeFg".toUpperCase()
===> ABCDEFG
groovy:000> "aBcDeFg".toLowerCase()
===> abcdefg

先頭文字だけを大文字・小文字に変換する

commons-langの入手して、CLASSPATHに設定して実行

wget http://ftp.kddilabs.jp/infosystems/apache/commons/lang/binaries/commons-lang-2.5-bin.zip
unzip commons-lang-2.5-bin.zip
[D:\workspace\groovy_SandBox]groovysh -cp C:\usr\lib\commons.apache.org\commons-lang-2.5\commons-lang-2.5.jar
groovy:000> import org.apache.commons.lang.WordUtils
===> [import org.apache.commons.lang.WordUtils]
groovy:000> str = "this is a pen"
===> this is a pen
groovy:000> WordUtils.capitalize(str)
===> This Is A Pen

commons-langなしだと、こんな感じか

text=""
str.split().each{word -> 
    text += word[0].toUpperCase() 
    text += word.size() > 1 ? word[1 .. word.size() - 1] + " " : " " 
}
println text
===> [Ljava.lang.String;@7e479a
This Is A Pen
===> null

大文字と小文字を入れ替える

str = "aBcDeFg"
swapStr = ""
m = (~/./).matcher(str)
m.find()
m.each{ it-> 
    swapStr += (Character.isUpperCase(it as char) ? Character.toLowerCase(it as char) :  Character.toUpperCase(it as char))
}
println swapStr
===> java.util.regex.Matcher[pattern=. region=0,7 lastmatch=]
===> true
===> java.util.regex.Matcher[pattern=. region=0,7 lastmatch=]
AbCdEfG
===> null

全角文字の大文字・小文字を変換する

"aiueo".toUpperCase()
"aiueo".toLowerCase()
===> AIUEO
===> aiueo

全角も大文字小文字変換できたんだ。知らんかった。。。

実行環境