おそらくはそれさえも平凡な日々

String::Randomのgolang移植書いた

https://github.com/Songmu/strrand

moznionがJava版を書いていたのでgolang版を書いた。

regexpチックなパターンを渡すインターフェースのみ移植している。以下の様な使い方だが、詳しくはSynopsis参照のこと。

str, err := strrand.RandomString(`\d{2,3}-\d{3,4}-\d{3,4}`)
fmt.Println(str) // 033-128-3473

一応コマンドラインツールも作っていて、

% go get github.com/Songmu/strrand/cmd/strrand

とかやれば、strrandというコマンドラインツールが入る。

cho45氏のString_random.jsは丸括弧によるグルーピングやパイプによる選択も実装していて素晴らしいが、strrandはPerl版同様それらの機能は残念ながら未実装である。

しかし、String_random.jsの活用方法に書いてあるコーフィースクリップトの発音を生成する位のことはできる。

% strrand '[カコヵか][ッー]{1,3}?[フヒふひ]{1,3}[ィェー]{1,3}[ズス][ドクグュ][リイ][プブぷぶ]{1,3}[トドォ]{1,2}'
ヵひヒィーズクイぷぶト

グルーピングもちょっと頑張ればできると思うので気が向いたらやりたい。どなたかパッチ書いてくださっても嬉しい。

created at
last modified at

2015-03-28T22:21:27+0900

comments powered by Disqus