Buraya da yalnızca JPEG dosyası upload edilebildiğinden dolayı yapılması gerekeni anlatan dosyaları rapide upload ettim.
linki : rapidshare.com
Yardımcı olabilirseniz çok mutlu olurum, şimdiden teşekkür ederim.

script linux uzerinde yazildi.
bir de soyle bir bakmakta yarar var, duzeltilebilir bircok yeri.
#!/usr/bin/env perl
$del = '<OPTION\s*?value=\d+>';
$source = cat kaynakdosya.txt;
$source =~ s/\r\n|\ |;//g;
@srcarr = split /$del/, $source;
open FILE, ">cikti.txt" or die "Can not open cikti.txt for writing:$!\n";
for(@srcarr){
s/\s{2,}/ /;
print FILE "$1 - $2$3\n" if /(\d{1,2})\s+-\s+(\w+.*?\s)\s*(\(\d+\))/;
}
close FILE;


Bu kodu çalıştırdığıomda cikti.txt'nin içi direk olarak boş görünüyor.
Ben sizin kodunuza bakarak şöyle bir şey yaptım aslında :
#!/usr/bin/env perl
$del = '<OPTION\s*?value=\d+>';
$source = "kaynakdosya.txt";
open(DAT, $source) || die("Could not open file!");
@raw_data=<DAT>;
open FILE, ">cikti.txt" or die "Can not open cikti.txt for reading:$!\n";
for(@raw_data){
print FILE;
}
close FILE;
Ama bu tahmin edilebileceği üzere dosyayı alıp aynısını yazdırıyor. Kaynak üzerinden yalnızca istediğim bölümü nasıl alacağımı anlayamadım?


#!c:/perl/bin/perl.exe
open( IN, 'kaynakdosya.txt');
$/ = undef;
my $string = <IN>;
close (IN);
$string =~ s/\n|\s{5}//g;
open (OUT, '>ciktiornegi.txt');
while($string =~ /(\d+ - [^)]*?\))</g)
{
unless($1 =~ /\[/) { print (OUT "$1\n"); }
}
close (OUT);
#nasıl yapacağımı hiç bilmiyorum demişsin, senin bu dersi hakkınla geçme şansın hiç yok onu söyleyeyim. bir yandan da; arkadaşın ve benim yazdığım regular expression kodları ne kadar gereksiz karmaşık gözükse de, bunu kendin sıfırdan bile başlasan 1 hafta içinde yazabilirsin. zor değil. biyoenformatikte ilerlemek istiyorsan, iyi öğrenmelisin regular expressionları.
