[#42454] 多量の正規表現との効率的なマッチのアイデアを、、 — しん <dezawa@...>

出沢です

22 messages 2006/06/22
[#42455] Re: 多量の正規表現との効率的なマッチのアイデアを、、 — rubikitch <rubikitch@...> 2006/06/22

From: しん <dezawa@aliadne.net>

[#42456] Re: 多量の正規表現との効率的なマッチのアイデアを、、 — しん <dezawa@...> 2006/06/23

出沢です

[#42458] Re: 多量の正規表現との効率的なマッチのアイデアを、、 — rubikitch <rubikitch@...> 2006/06/23

From: しん <dezawa@aliadne.net>

[#42459] Re: 多量の正規表現との効率的なマッチのアイデアを、、 — しん <dezawa@...> 2006/06/23

出沢です

[#42460] Re: 多量の正規表現との効率的なマッチのアイデアを、、 — rubikitch <rubikitch@...> 2006/06/23

From: しん <dezawa@aliadne.net>

[#42461] Re: 多量の正規表現との効率的なマッチのアイデアを、、 — しん <dezawa@...> 2006/06/23

出沢です。

[ruby-list:42427] Re: 空白行を除くための行数の数え方

From: 遠藤 大二 <dendoh@...>
Date: 2006-06-20 06:19:01 UTC
List: ruby-list #42427
神戸さま 片山さま

遠藤です

もうしおくれました。GENBANKのデータを処理しようとしています。

レスポンスが遅くてすみません。
まず、
1
% sed -e '/^\/\//q' (元のファイル) > (加工されたファイル)
は、うまくいきました。ただし、とうこうではぬけていた問題として複数レコードで
は、二番め以降がなくなってしまいました。

first record
----
----
//

second record
---
----
//

2
片山さんからのほうほうは、最初はうまくいったのですが、下記のBioRubyのコード
の実行を試みた後は、以下のエラーが返されてしまい、実行できなくなりました。

getgb.rb:8: undefined method `strip!' for #<Bio::GenBank:0x2aaaab3c7198> 
(NoMethodError)
        from getgb.rb:7:in `each_entry'
        from getgb.rb:7

filestrip2.rb:4: warning: regex literal in condition

コード
getgb.rb>>>>>>>>>>>>

#!/usr/bin/env ruby

require 'bio'

ff=Bio::FlatFile.new(Bio::GenBank, ARGF)
sgb=[]
ff.each_entry do |gb|
	gb.strip!
	p gb.definition
	p gb.organism
	p gb.taxonomy
	gb.features.each  do |feature|
		p feature.feature
#		p feature.position
	end
#	p gb.features
end

---------------------------
filestrip2.rb>>>>>>>>>

#!/usr/bin/env ruby

ARGF.each do |line|
 print line unless /^$/
end

---------------
何度もすみませんが、お知恵をいただけるとさいわいです。



> > 遺伝子のデータを処理しています。
> > ダウンロードしたデータは
> > //
> > という記号で終わるのですが、その下に二行余計な行が入っているために、処理
がう
> > まく行きません。
>目的の「処理」は、トライされているRubyのスクリプトとはまったく別物なの
>でしょうか?
>
> > 下記のやり方を取ろうと考えているのですが、もっとエレガントな方法を御存知
の方
> > がいらっしゃれば、御助言いただけないでしょうか。
>行の番号に捕らわれすぎている気がします。
>
> > 1ファイルの行数を調べる
> > 2'//'で始まる行の行番号を調べ、その最大数を求める
> > 3ファイルのうち2で決めた行数のみを新たに保存する。
>"//"の行が来た時点で、ファイルを読むのを止めては、どうでしょう?  Ruby
>じゃありませんが、
>
>	% sed -e '/^\/\//q' (元のファイル) > (加工されたファイル)
>
>といったことがされたい気がします。
>
>--
>神戸 隆博(かんべ たかひろ)		at 仕事場
>

_________________________________________________________________
迷惑メールやウイルスへの対策も万全「MSN Hotmail」 
http://promotion.msn.co.jp/hotmail/ 


In This Thread