2011年5月24日

[ruby-list:48103] Re: データ整形

From: HIDE <u-zero@xxxxx>
Subject: [ruby-list:48102] データ整形
Date: Tue, 24 May 2011 22:09:54 +0900

るびきちです。

> ある一行の文字列データ(添付)を任意のデータ数で
> 改行して整形したいのですが、どうもうまくいきません。

> どなたか、ご教授いただけないでしょうか?
> また、サンプルスクリプト提供していただけると幸いです。

あまり知られていないかもしれませんが、nkfを使うとよいです。

require 'nkf'
str = "aaaaaaaaaabbbbbbbbbbcccccccccc"
puts NKF.nkf("-wf5-0", str)
# >> aaaaa
# >> aaaaa
# >> bbbbb
# >> bbbbb
# >> ccccc
# >> ccccc

オプションの-wf5-0は、
- wはUTF-8出力
- f5は5桁で折り返し
- -0はマージン0 (正確に折り返したいなら必要)

ちなみに、日本語が入っていても大丈夫です。

str = "aaaあいうaaaaえいaaabbbおえbbbbbbbおえccおえcccccccc"
puts NKF.nkf("-wf10-0", str)
# >> aaaあいうa
# >> aaaえいaaa
# >> bbbおえbbb
# >> bbbbおえcc
# >> おえcccccc
# >> cc

--
rubikitch
Blog: http://d.hatena.ne.jp/rubikitch/
Site: http://www.rubyist.net/~rubikitch/
Twit: http://twitter.com/rubikitch/
『Emacsテクニックバイブル』 http://d.hatena.ne.jp/rubikitch/20100713/emacsbook
『Ruby逆引きハンドブック』 http://d.hatena.ne.jp/rubikitch/20090525/rubybook


投稿者 xml-rpc : 2011年5月24日 22:33
役に立ちました?:
過去のフィードバック 平均:(0) 総合:(0) 投票回数:(0)
本記事へのTrackback: http://hoop.euqset.org/blog/mt-tb2006.cgi/103948
トラックバック
コメント
コメントする




画像の中に見える文字を入力してください。