Re[3]:ファイルの添え番号の桁を3桁に揃えるGroovyスクリプト
Re:ファイルの添え番号の桁を3桁に揃えるGroovyスクリプト - No Programming, No Life
にて、私の書いたスクリプトを
ゲンゾウ用ポストイット: Re:Re:ファイルの添え番号の桁を3桁に揃えるGroovyスクリプト
にてゲンゾウさんがブラッシュアップしてくださっておりました。*1
対象箇所はテキストに含まれる数値の最大桁数を求める部分。
私の書いたもの
def maxDigit = list.collect{ name -> (name =~ /(\d+)/).collect{ it } }.flatten()*.toInteger().max().toString().size()
私の書いたものはflatten()やらtoInteger()やら何やらごちょごちょやってて見苦しいですが…
ゲンゾウさんの書いたもの
def maxDigit = list*.replaceAll(/^[^\d]*|[^\d]*$/, "")*.size().max()
なるほど!数値でない部分をreplaceAllで一気に吹き飛ばすわけですね。
確かにこれの方がすっきりしていていい感じです。勉強になりました。*2