馬鹿ldifファイルをとりあえずcsvその2

 #!/usr/bin/ruby -Ke
 require 'iconv'
 require 'base64'
 File.open("shokuin.ldif"){|file|
 #File.open("a.txt"){|file|
   file.read.scan(/.+?^$\n/m){|s|
     r=""
     if s=~/objectclass: shokuinJoho/m
       r=s.split(/\n/).map{|ss|
         #ss.split(/ /)[1].gsub(/SHOKUINRIREKITUBAN=([^,]+),OU=EMP,OU=EMPMG,O=PATENTOFFICE/,'\\1')
         if ss=~/SHOKUINRIREKITUBAN=([^,]+),OU=EMP,OU=EMPMG,O=PATENTOFFICE/
           $1
         elsif ss=~/shokuinsimei/
           Iconv.iconv("eucjp","utf8",decode64(ss.split(/ /)[1])) rescue ss.split(/ /)[1]
         else
           ss.split(/ /)[1]
         end
       }.join(",")
     elsif s=~/objectclass: shokuinShozokuJoho/m
       r=s.split(/\n/).map{|ss|
         if ss=~/HEININTUBAN=[^,]+,SHOKUINRIREKITUBAN=([^,]+),OU=EMP,OU=EMPMG,O=PATENTOFFICE/
           $1
         else
           ss.split(/ /)[1]
         end
       }.join(",")
     end
     puts r
   }
 }