リンク: [ホーム] [自己紹介] [リンク集] [アルバム] [ソフトウェア] [発表文献] [その他]

まさおのChangeLogメモ / 2011-12-01

01 02 03 04 05 06 07 08 09 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31

2011-12-01 Thu

* inputタグとlabelタグを出力するRubyスクリプト(ほぼワンライナー)

手書きがめんどうだったので、書きすてたものをメモしておく。

#!/usr/bin/env ruby

lines = ARGF.readlines.map{|e| e.chomp }
label = lines.shift
lines.each_with_index do |l, i|
   val = l.downcase.gsub( /[^\w ]/, " " ).gsub( /\s+/, " " ).strip
   puts %Q[<input type="radio" name="#{ label }" value="#{ val }" id="#{ label }#{ i }"><label for="#{ label }#{ i }">#{ l }</label><br>]
end


入力ファイルは以下のようなもの:
ebooks_use
Yes
No

最初の一行がフォームコントロールIDで、続く各行がそれぞれの選択肢。
上記例は、以下のような出力となる:

<input type="radio" name="ebooks_use" value="yes" id="ebooks_use0"><label for="ebooks_use0">Yes</label><br>
<input type="radio" name="ebooks_use" value="no" id="ebooks_use1"><label for="ebooks_use1">No</label><br>