On Sun, 03 Sep 2006 23:02:43 +0900
"Bruce." <kbk@...> さんwrote:
> > import re
> > file = open("test.txt", "r")
> > while 1:
> > line = file.readline()
> > if re.match("^[a-z]+$", line):
> > print 'Alphabet: ',line
> > elif re.match("^[0-9]+$", line):
> > print 'Number: ', line
> > elif not line: break
> > file.close()
> >
> > で動きますね。ただ、chompがない^^;
>
> 中村さんの後のメールにあるとおり、キモはマッチングの
> 可否を判定した後でマッチングオブジェクトから情報を
> 取り出すことなので、藤岡さんのこのやり方だとマッチング
> 結果の情報は取り出せませんよね。
そうですね。思ったのは、マッチするものがあれば、ブロックの内部でもう一
度re.searchで処理するとかですね。また、後方参照で取り出すようなパターン
が書けるなら、match1 = \1 (Perlとは違うので注意が必要ですね)などで取り出
せるかなと思います。これは確かめていないですけど、Perl to Python
Migrationネタです(^^)
> あと、好みを申せば空行かどうかの判定は最初にやりたいっす(笑)
好みというよりは、ロジック的にそうすべきですね^^while文がブンブン回っ
ちゃって、取り敢えず終わらないのを避けるために付け加えたので^^;そうなっ
ていたのですよ。
藤岡 和夫
kazuf@...
TS Networkのために http://homepage1.nifty.com/kazuf/