文字を大文字・小文字に変換する
すべてを大文字・小文字に変換する
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
全角も大文字小文字変換できたんだ。知らんかった。。。
実行環境
- OS:Windows XP
- Groovy Version: 1.6.5
- JVM: 1.6.0_12