[#41251] mswin32(もしくはActiveScriptRuby)でRuby/Tkを使うには? — "conundrum /" <conundrum@...>

conundrumです。

12 messages 2005/10/11

[#41284] 条件に合う見出しの内容だけを抽出 — isawa_kz <isawa_kz@...>

井沢と申します。

32 messages 2005/10/14
[#41299] Re: 条件に合う見出しの内容だけを抽出 — Kousuke Honda <kousuke4@...> 2005/10/14

本田です。はじめましてです。

[#41300] Re: 条件に合う見出しの内容だけを抽出 — isawa_kz <isawa_kz@...> 2005/10/14

井沢です

[#41301] Re: 条件に合う見出しの内容だけを抽出 — しん <dezawa@...> 2005/10/14

出沢です

[#41340] Date へのメソッド追加要望 — MATSUNO Tokuhiro <tokuhirom@...>

tokuhirom@Inamode6:897 です。

19 messages 2005/10/22

[#41371] 北九州市の rubyist へ — Akimichi Tatsukawa <akimichi_tatsukawa@...>

こんにちは。立川察理と申します。

13 messages 2005/10/25

[#41400] 全角スペースを区切りとした文字列分解で — 中村 英夫 <cxn03651@...>

中村と申します。

10 messages 2005/10/27

[#41416] Rubyでこういうの作れますか?(中央銀行編) — Omoti <omoti@...24.net>

Rubyで中央銀行システムを作りたいんですが、できますか?

14 messages 2005/10/29
[#41418] Re: Ruby でこういうの作れますか?(中央銀行編) — Sako Hiroshi <sakoh@...2.so-net.ne.jp> 2005/10/29

[#41420] Re: Ruby でこういうの作れますか?(中央銀行編) — Omoti <omoti@...24.net> 2005/10/29

そんな大規模じゃないですよ!

[#41425] "Programming Ruby 2nd edtion"の邦訳について — "higashi ryota" <ryochin_hgs@...>

始めまして。既出だったらすいません、過去ログで検索したのですが見つけられませ

10 messages 2005/10/30
[#41428] Re: "Programming Ruby 2nd edtion"の邦訳について — Yukihiro Matsumoto <matz@...> 2005/10/30

まつもと ゆきひろです

[ruby-list:41335] Re: Usage of ?a

From: NAWATE Masahiko <strike@...>
Date: 2005-10-18 12:19:13 UTC
List: ruby-list #41335
縄手@松江です.

On Tue, 18 Oct 2005 15:39:44 +0900
"U.Nakamura" <usa@garbagecollect.jp> wrote:

> こんにちは、なかむら(う)です。

> ?は数値リテラルの記法ですから、リテラルじゃないといけないです。
> ということは、
> 
>   str = "a"
>   p eval("?#{str}")  #=> 97
> 
> とすればできるわけですけど、素直に
> 
>   p str[0]           #=> 97
> 
> とするのが普通かと思います。

というアドバイスを受けて,練習がてら文字コードを探すスクリプトに
してみました.いい加減なものですが,おかげで動くものが出来ました.

#1バイトコード文字が混ざっているとおかしな動作になりますが.

何とか改良して,もうちょっと使えるものにして練習しようと思います.
ありがとうございました.

require 'jcode'
require 'kconv'

include Kconv

result_code = []

text = ARGV[0].split(//e)

printf "日本語文字"

for i in 0...text.size
  printf "%4s ", text[i]
end

printf "\n"

ary = ARGV[0].tojis.split(//)

str = ary.join.gsub(/\e\(B/,"")
str = str.gsub(/\e\$B/,"")

ary = str.split(//)

for i in 0...ary.size
  if ary[i] =~ /\\/
    result_code[i] = 92
  else
    chr = ary[i]
    result_code[i] =  eval("?#{chr}")
  end
end

#p result_code

printf " JIS code:  "

for i in 0...result_code.size
  printf "%x", result_code[i]
  printf " " if i % 2 == 1
end

printf "\n EUC code:  "

for i in 0...result_code.size
  printf "%x", result_code[i] + 0x80
  printf " " if i % 2 == 1
end

printf "\nSJIS code:  "

for i in 0...result_code.size
  if i % 2 == 0
    c1 = result_code[i]
    if c1 % 2 == 1
      c1 = (c1 + 1) / 2 + 0x70
    else
      c1 = c1 / 2 + 0x70
    end
    if c1 >= 0xa0
      c1 = c1 + 0x40
    end
    printf "%x", c1
  else
    c2 = result_code[i]
    c1 = result_code[i-1]
    if c1 % 2 == 1
      c2 = c2 + 0x1f
    else
      c2 = c2 + 0x7d
    end
    if c2 >= 0x7f
      c2 = c2 + 1
    end
    printf "%x ", c2
  end
end    

printf "\n"


-- 
縄手雅彦@島根大学総合理工学部 電子制御システム工学科
{strike,freedom,justice}@mag.shimane-u.ac.jp
http://www.ecs.shimane-u.ac.jp/~nawate/

In This Thread

Prev Next