[#49119] Ruby/Tk カーソル位置の移動方法について — masa masa <masamasa.ruby@...>
初めまして安藤と申します。
3 messages
2013/01/07
[#49131] [ANN] Ruby生誕20周年記念パーティのお知らせ — Kakutani Shintaro <shintaro@...>
一般社団法人日本Rubyの会のかくたにです。
6 messages
2013/01/15
[#49138] [ANN] Ruby 1.9.3 patchlevel 374 — "U.Nakamura" <usa@...>
Ruby ユーザーの皆様
3 messages
2013/01/17
[#49140] [ANN]Ruby-2.0.0-rc1, Ruby-1.9.3-p374 Windows用インストーラパッケージ — arton <artonx@...>
artonです。
7 messages
2013/01/18
[#49271] Re: [ANN]Ruby-2.0.0-rc1, Ruby-1.9.3-p374 Windows用インストーラパッケージ
— whiteleaf <2nd.leaf@...>
2013/03/12
whiteleaf です。
[#49272] Re: [ANN]Ruby-2.0.0-rc1, Ruby-1.9.3-p374 Windows用インストーラパッケージ
— Takahiro Kambe <taca@...>
2013/03/12
In message <CAGePti=3ArS8QeiAgt+B5t4StXdHZ6vuiz9d+=Ef-wk1M=WkDg@mail.gmail.com>
[#49148] Ruby 1.9で、バイト長の部分文字列を作りたくて悩んでます — Daisuke Yokotsuka <yokots_d@...3-net.ne.jp>
はじめまして。横塚と申します。
16 messages
2013/01/29
[#49150] Re: Ruby 1.9で、バイト長の部分文字列を作りたくて悩んでます
— Urabe Shyouhei <shyouhei@...>
2013/01/29
On 01/29/2013 06:35 PM, Daisuke Yokotsuka wrote:
[#49154] Re: Ruby 1.9で、バイト長の部分文字列を作りたくて悩んでます
— Daisuke Yokotsuka <yokots_d@...3-net.ne.jp>
2013/01/29
Shyouhei様
[#49156] Re: Ruby 1.9で、バイト長の部分文字列を作りたくて悩んでます
— Takeshi Iogawa <alpha@246.ne.jp>
2013/01/29
いおがわと申します。
[#49149] Re: Ruby 1.9で、バイト長の部分文字列を作りたくて悩んでます
— "Shota Fukumori (sora_h)" <sorah@...>
2013/01/29
sorahです。
[#49152] Re: Ruby 1.9で、バイト長の部分文字列を作りたくて悩んでます
— sunao tanabe <aib@...>
2013/01/29
たなべです。
[#49166] Enumerator#+ — 小田 利通 <oda@...>
13 messages
2013/01/31
[#49167] Re: Enumerator#+
— <alucky0707@...>
2013/01/31
あらきという者です。
[#49169] Re: Enumerator#+
— "H.Hiro" <main@...>
2013/01/31
SC5IaXJvGyRCJEckOSEjGyhCDQoNCj4gGyRCPi5FRCRIPz0kNyReJDkhIxsoQg0KPg0KPiAbJEI6
[ruby-list:49156] Re: Ruby 1.9で、バイト長の部分文字列を作りたくて悩んでます
From:
Takeshi Iogawa <alpha@246.ne.jp>
Date:
2013-01-29 11:16:02 UTC
List:
ruby-list #49156
いおがわと申します。
MLの参加自体新参者なので僭越ですが。。。
str = "7bit asciiが混じった長い文字列"
enc = str.encoding
str.force_encoding("BINARY").slice(0,72).force_encoding(enc)
ではいかがでしょう?
# ただ、force_encoding に頼るのはあまりよい方法ではない、と
# 考えますが。。。
ところで、余計なお世話ですが、1バイト文字とマルチバイト文字の
混在する文字列を問答無用でぶった切るとあまりよくないことが
起こったりしませんか? 特にSJISで"\" なんかが絡んでくると
いやらしいバグが出そうで気になります
(2013/01/29 19:59), Daisuke Yokotsuka wrote:
> Shyouhei様
>
> ご教示、ありがとうございます。
>
>> bytesliceってなかったっけと思ったらありますね。だめでしょうか。
>
> 調べてみましたが、bytesliceは、1.9.3からの機能みたいですね。
> 残念ながら、私の環境は1.9.2p290で、1.9.2には存在しない機能のようです。
> 1.9.2で実行すると
>
> undefined method `byteslice' for #<String:0x48b670> (NoMethodError)
>
> というエラーになってしまいました。
>
> 一時的に1.9.3をインストールして試しましたが、bytesliceだと問題なく
> 上手く行きしたし、実行速度も速かったです。
> ただし、諸般の事情で、Rubyのバージョンは1.9.2に固定せざるを得ません。
> (せっかく、良い手段を教えて戴いたのに残念です)
>
> 何か別な手を考えてみます。
>
> ご教示、ありがとうございました。
>
> 横塚
>
>
> <5107A277.2010401@ruby-lang.org> の、
> "[ruby-list:49150] Re: Ruby 1.9で、バイト長の部分文字列を作りたくて悩んでます" において、
> "Urabe Shyouhei<shyouhei@ruby-lang.org>"さんは書きました:
>
>> On 01/29/2013 06:35 PM, Daisuke Yokotsuka wrote:
>>> はじめまして。横塚と申します。
>>> 昨年の11月からRubyの勉強を始めた新参者です。
>>> よろしく、お願い致します。
>>>
>>> 題名の通り、Ruby 1.9で、バイト長の部分文字列を作りたくて悩んでます。
>>> どなたか、良い知恵が有りましたら、ご教示下さいませ。
>>>
>>> もし、このMLはそのような場では無いということでしたら、申し訳ありません。
>>> 読み捨てて下さい。
>>>
>>> さて、やりたいことは、SJIS漢字とASCIIの混在した文字列から、
>>> 先頭の72バイトを抜き出したいということです。
>>>
>>> target = data[0,72] ;
>>>
>>> では、72バイトではなく、72文字が転送されてしまうので、もちろんダメでした。
>>
>> bytesliceってなかったっけと思ったらありますね。だめでしょうか。
>>
>> target = data.byteslice(0...72)
>>
>>
>
>
> --
> Daisuke Yokotsuka
>
>
--
Takeshi Iogawa