groovy

073:正規表現を分割して記述する

お題 正規表現を分割して記述する コード assert "aaaccc" =~ /(?:aaa)|(?:bbb)/ assert "bbbccc" =~ /(?:aaa)|(?:bbb)/ assert !("cccddd" =~ /(?:aaa)|(?:bbb)/) re1 = /aaa/ re2 = /bbb/ m1 = ("aaaccc" =~ "${re1}|${re2}") assert m1.find() == true as…

072:文字列が複数の正規表現のすべてにマッチするか調べる

お題 文字列が複数の正規表現のすべてにマッチするか調べる コード /*「あ」を含むか? */ assert "めぐりあい" =~/あ/ /*「あ」と「い」を両方含むか?*/ assert "めぐりあい" =~/(?=.*?あ).*?い/ assert "いあいあ" =~/(?=.*?あ).*?い/ assert !("IA-64" =…

071:正規表現のメタ文字をエスケープする

お題 正規表現のメタ文字をエスケープする コード import java.util.regex.Pattern; assert Pattern.quote("*.txt") == /\Q*.txt\E/ assert Pattern.quote("what?") == /\Qwhat?\E/ assert Pattern.quote("[a-z]") == /\Q[a-z]\E/ assert Pattern.quote("*{a…

070:文字列が正規表現として正しいか調べる

お題 文字列が正規表現として正しいかどうかを調べる。 コード import java.util.regex.Pattern def validRegexp(pattern){ try { Pattern.compile(pattern) true } catch (e) { false } } assert validRegexp("aaa*") == true assert validRegexp("*.") == …

069:メッセージのダイジェストを作成する

お題 文字列から16進数テキストのMD5ダイジェストを作成する コード //ref http://www.techscore.com/tech/Java/JavaSE/Utility/10-2/ import java.security.MessageDigest java.security.MessageDigest.metaClass.hexDigest { target -> delegate.update(ta…

068:文字列の一部を特定の文字列で埋める

お題 「Password:」という文字列の後から行末までを「*」に変える コード def hidePassword(str){ str.replaceAll(/(Password:)(.*)/) {all, s1, s2 -> s1 + '*'*s2.size() } } result = hidePassword("Password:あいうえおabcdeかきくけこfghij") assert re…

067:文字列を最大n桁に切り詰める(ICU版)

東アジアの文字幅/East Asian Width というものが定められていて、 JavaだとEclipseでICU4Jを使うと判別できるらしい。 お題 文字列を最大n桁に切り詰める コード @Grab('com.ibm.icu:icu4j:50.1') import com.ibm.icu.lang.UCharacter import com.ibm.icu.l…

067:文字列を最大n桁に切り詰める

お題 文字列を最大n桁に切り詰める Ruby レシピだと、「全角文字幅=半角文字×2と仮定して」とあったので、同じ条件で。 コード if (GroovySystem.getVersion() < "2.0") { println "Groovy 2.0 以上が必要" System.exit(1) } def takeNcols(str, n){ result …

2012年10月 Groovyist/G*のあれやこれや

G*ワークショップ「Vert.x+JavaOne+Groovy2.0なG*」が開催されました。 yokohama.groovyは順調に隔週で開催さてるようです。 Gradleを始めた人が増えた2012年10月のまとめです。 画像処理についてあれこれ: groovyで手書き風タイル模様を描画するそもそも、J…

『G*ワークショップ「Vert.x+JavaOne+Groovy2.0なG*」 #jggug』に参加してきた

第3回社内LT大会に見た顕在化した失望と一握の希望 勉強会でも殆ど聞かないGroovyの勉強会あります! どこで情報収集すればいいかわからない? ここにカレンダーが! JGGUG イベントカレンダー告知が足りない? 勉強会カレンダーにも載ってるし、 こくちーず…

2012年09月 Groovyist/G*のあれやこれや

Programming Languages Influence Network によると、Groovyは、Java、Objective-C、Perl、Python、Ruby、Samlltalk、に影響を受けたようだ。 あた、JGGUGが福岡に初進出した9月 2012/09/01 G*ワークショップ in 福岡 #jggug togetter G*Workshop in 福岡(Gr…

素数のときだけ"JOJO!"って出力するプログラム Groovyの場合

素数のときだけ"JOJO!"って出力するプログラム まとめ職人の場合 まとめだけというのもなんなんで、Groovyで。 お題 window.twttr = (function(d, s, id) { var js, fjs = d.getElementsByTagName(s)[0], t = window.twttr || {}; if (d.getElementById(id))…

2012年07月 Groovyist/G*のあれやこれや

今月も盛りだくさん。 G*ワークショップ、Gradleトーキョー、Gradle名古屋、夏サミでのブース、tddbc in action、Jenkinsカンファレンスなど7月も盛りだくさんでした。 SpringSource Tools Suite(STS)でGroovy,Grails開発(準備) - かまたま日記2#griffon プ…

GroovyたんIntelliJ IDEA

window.twttr = (function(d, s, id) { var js, fjs = d.getElementsByTagName(s)[0], t = window.twttr || {}; if (d.getElementById(id)) return t; js = d.createElement(s); js.id = id; js.src = "https://platform.twitter.com/widgets.js"; fjs.paren…

Groovyのレシピ本

「ねーねーGroovy逆引きレシピって何色?」だと!? @masanobuimai さんより ネタにマジレスですんません。レシピ本はすでにありますよ(念のため。 http://pragprog.com/book/sdgrvr/groovy-recipes レシピ本ってあったんだ。 Groovy Recipes: Greasing the…

「ねーねーGroovy逆引きレシピって何色?」だと!?

window.twttr = (function(d, s, id) { var js, fjs = d.getElementsByTagName(s)[0], t = window.twttr || {}; if (d.getElementById(id)) return t; js = d.createElement(s); js.id = id; js.src = "https://platform.twitter.com/widgets.js"; fjs.paren…

『G*ワークショップ「非同期並列なG*」+JGGUG総会 #jggug』に参加してきた。

今回は、 @shinyaa31 さんが裏番組の『リーダブルコード − 忘れてもいいコードを書こう。』に参加してきた #devlove に行ってたので、超一流のレポート職人がいない ><。 こちらも負けずに、“暑かった”ので、その様子をまとめてみた。 G*ワークショップ「…

2012年06月 Groovyist/G*のあれやこれや

TDDB大阪でSpockが大人気に。 Griffon 1.0、Gradle 1.0、Groovy 2.0とリリースラッシュ。 Literal Ice: PaaSでGrailsならCloudBeesがイイ2012-06-01 - Grな日々(uehajの日記)画像処理についてあれこれ: groovyで画像をアーモンド形に切り取る画像処理につい…

Twitterアカウント(@は含まない)が記載の一覧ファイルからアイコンをダウンロードし、座席表用のアカウントつき画像を作成する座席表職人のためのGroovyスクリプト

僕が参加する勉強会はこくちーずが多め、日本鼻メガの会がZussarといった感じだった。 日本鼻メガネの会 4時限目は、Doorkeeperでやんの。 Doorkeeperは、Facebookと関連付けるか、独自のアカウントになるので、Twitterアカウントが取れない ><。 入力項目…

Groovyで型を省略した場合と型を指定した場合の違い

window.twttr = (function(d, s, id) { var js, fjs = d.getElementsByTagName(s)[0], t = window.twttr || {}; if (d.getElementById(id)) return t; js = d.createElement(s); js.id = id; js.src = "https://platform.twitter.com/widgets.js"; fjs.paren…

リアル幻獣も叫んだGriffon 1.0が登場したので動かしてみた

window.twttr = (function(d, s, id) { var js, fjs = d.getElementsByTagName(s)[0], t = window.twttr || {}; if (d.getElementById(id)) return t; js = d.createElement(s); js.id = id; js.src = "https://platform.twitter.com/widgets.js"; fjs.paren…

Twitterのプロフィールアイコンを1行で取得するGroovyスクリプト

tweetimag.es 取得URL http://img.tweetimag.es/i/{username}_m http://img.tweetimag.es/i/{username}_n http://img.tweetimag.es/i/{username}_b http://img.tweetimag.es/i/{username}_o 例 1行で取得するGroovyスクリプト new File("orange_clover.png")…

PARTAKEから申込者のアイコンをダウンロードし、座席表用のアカウントつき画像を作成する座席表職人のためのGroovyスクリプト

こくちーずから申込者のアイコンをダウンロードし、座席表用のアカウントつき画像を作成する座席表職人のためのGroovyスクリプト ATNDから申込者のアイコンをダウンロードし、座席表用のアカウントつき画像を作成する座席表職人のためのGroovyスクリプト Zus…

Zusaarから申込者のアイコンをダウンロードし、座席表用のアカウントつき画像を作成する座席表職人のためのGroovyスクリプト

こくちーずから申込者のアイコンをダウンロードし、座席表用のアカウントつき画像を作成する座席表職人のためのGroovyスクリプト ATNDから申込者のアイコンをダウンロードし、座席表用のアカウントつき画像を作成する座席表職人のためのGroovyスクリプト こ…

2012年05月 Groovyist/G*のあれやこれや

5月は久しぶりのJGGUGの第21回 G*ワークショップがあった。 募集枠は増員を繰り返して75まで増えた。 GradleでEnclosedのテストが二回実行されるんだ - 日々常々実装時の型と評価後の型 - コードの恵み静的スカフォールド ≪ awe9{ owner.call() } - コードの…

ATNDから申込者のアイコンをダウンロードし、座席表用のアカウントつき画像を作成する座席表職人のためのGroovyスクリプト

ATND から参加者の Twitter アイコン画像をダウンロードする Ruby スクリプト 当然カウンターで、Groovy版を書かないとね。 ポイント ATNDはAPIがある 出欠確認API レスポンスは、XML形式 xml.events.event.users.user こんな形式でアクセスできる。 コード …

ファイルのダウンロードをGroovyっぽく書きたい。

こくちーずから申込者のアイコンをダウンロードし、座席表用のアカウントつき画像を作成する座席表職人のためのGroovyスクリプトの画像をダウンロードする処理。 def url = new URL("http://img.tweetimag.es/i/orange_clover_n") def file = new File("oran…

第21回 G*ワークショップ に参加してきた #jggug

金環日食があった5/21(月)にSunを食ったOracleに行った。 第21回 G*ワークショップ #jggugに参加するためにだ。オレンジの人です。 70人と、普段の倍以上の参加申し込み。 Griffon、Gradle、Grailsと豪華なラインナップ。 @yusukeyの本格的なUst と@shinyaa3…

GroovyでEvernoteをごにょごにょする方法

Evernoteのデータ管理はSQLite の続き、Groovyで扱う方法。例、Evernoteから、201204のノートブックから、G*のタグがついているノート名とURLをはてな形式で一覧化する。 こんな感じになる。 2012年04月 Groovyist/G*のあれやこれや 参考 Groovyでデータベー…

2012年04月 Groovyist/G*のあれやこれや

訂正 ひぃー、内容が3月のものだったので、書き換え。。。 groovyあれこれ: grailsとjQuery Mobileでdynamic scaffoldingのcreate画面を変更するXP一日体験ワークショップに参加+α - pocketberserkerの爆走Gradle a new Generation Build Toolgroovyあれこれ…