Groovyで文字列の先頭・末尾から空白を取り除く


id:torazukaGroovyたんの座り絵バージョン



文字列先頭・末尾の両方の空白類文字を除去

ソース
println "\tキュッと\r\n".trim()
実行結果
キュッと

文字列先頭の空白類文字だけ除去

ソース
def lstrip(str){
    str.replaceAll(/\A\s+/,"")
}

println lstrip("\tキュッと\r\n")
実行結果
キュッと

改行は、\r\n

文字列先頭・末尾の全角空白文字も取り除く

ソース
def jstrip(str){
    str.replaceAll(/\A[\s ]+/,"").replaceAll(/[\s ]+\z/,"")
}


def jlstrip(str){
    str.replaceAll(/\A[\s ]+/,"")

}

def jrstrip(str){
    str.replaceAll(/[\s ]+\z/,"")
}

println jstrip ("\t キュッと\r \n")
println jlstrip("\t キュッと\r \n")
println jrstrip("\t キュッと\r \n")
\t□キュッと\r□\n"
□は全角空白になっている
実行結果
キュッと
キュッと
 

	 キュッと

2つ目のキュッとの後は\r全角空白\nになってるので
コマンドプロンプトで実行すると以下のように「キ」無いように見えてしまう。これでしばらく悩んだ(^_^;;;

キュッと
 ュッと

         キュッと

添削歓迎

ここ間違ってるよ
こうした方がGroovyらしくないか?
などなど
方法は、コメント、トラックバックはてブTwitter @orange_clover宛 で、お願いしまます。



実行環境






Groovyの詳細についてはJavadocと以下の書籍を参考にしている。




Dierk Konig、Andrew Glover、Paul King、、Guillaume Laforge、Jon Skeet、杉浦 孝、櫻井 正樹、須江 信洋、関谷 和愛、佐野 徹郎、寺沢 尚史

しばらくすれば2nd Editionが出るはず




問題自体は第2版のもの。rubyと似てる部分も多いので、ヒントにもなる。
写経でもいいが自分で考えるために他言語の例をGroovyで置き換えてる。




青木 峰郎、後藤 裕蔵、高橋 征義、まつもと ゆきひろ

価格: ¥ 2,940
価格は記載時点のものです。購入前にAmazonでご確認ください。




Groovyイン・アクションを読むならあった方が便利かな。

Rubyレシピブックは「ほんたった」で立ててる