2014年度の合宿参加者の集計に使ったプログラムの一覧。 コードの質はお察し下さい。 詳しく聞きたかったらbenevolent0505に連絡を。
第一回参加希望者の一覧を出力をしてくれるプログラム。
名簿に記入した人一覧のWikiテキストを出力してくれるプログラム。
名簿に未記入な人の一覧を出力してくれるプログラム。
| #第一回合宿募集者のcsvに落としこむ | |
| require 'csv' | |
| f = open('2014_members.txt') | |
| CSV.open('2014_members.csv', 'wb') do |csv| | |
| f.each do |line| | |
| if /する/ =~ line then | |
| if /:/ =~ line then | |
| p $`.strip | |
| csv << ["#{$`.strip}"] | |
| end | |
| end | |
| end | |
| end | |
| f.close |
| #合宿参加者最終メンバーをwikiテキストに出力する | |
| require 'csv' | |
| file = File.open('members.txt', 'w') | |
| header = "== 2014年度合宿参加者 == | |
| ||'''名前'''||'''担当'''||'''煙火'''|| | |
| " | |
| file << header | |
| CSV.foreach('2014_members_last.csv') do |csv| | |
| p csv | |
| file.puts("||[[#{csv[0]}]]||#{csv[1]} ||#{csv[2]} ||") | |
| end | |
| file.close |
| # -*- coding: utf-8 -*- | |
| #未回答者の掃き出しスクリプト | |
| #誰かCSVの読み込みをメソッドにまとめて | |
| require 'csv' | |
| =begin | |
| def read_and_push_csv(filename, array) | |
| CSV.foreach(filename) do |csv| | |
| array.push(csv[0]) | |
| p csv | |
| end | |
| end | |
| =end | |
| first = [] | |
| last = [] | |
| canceled = [] | |
| CSV.foreach('2014_members.csv') do |csv| | |
| first.push(csv[0]) | |
| end | |
| first.shift | |
| CSV.foreach('2014_members_last.csv') do |csv| | |
| last.push(csv[0]) | |
| end | |
| CSV.foreach('canceled.csv') do |csv| | |
| canceled.push(csv[0]) | |
| end | |
| # read_and_push_csv(canceled.csv, canceled) | |
| unanswered = (first - last) - canceled | |
| CSV.open('unanswered.csv', 'wb') do |csv| | |
| unanswered.each do |item| | |
| csv << [item] | |
| end | |
| end |