我有一個Perl問題。我有一個文件,這個文件的每一行包含不同數量的TS G和C 的文件看起來像下面Perl - 在一個固定數量的字符ina文件中添加新的行和製表符?
ATCGCTGASTGATGCTG
GCCTAGCCCTTAGC
GTTCCATGCCCATAGCCAAATAAA
我想添加行號的每一行 然後插入一個\ n每6字符,然後在每一個新行的創建把一個 空空間每3個字符的輸出的
實施例應該是
Line NO 1
ATC GCT
GAS TGA
TGC TG
Line NO 2
GCC TAG
CCC TTA
GC
我已經提出了以下的代碼:
my $count = 0;
my $line;
my $row;
my $split;
open(F, "Data.txt") or die "Can't read file: $!";
open (FH, " > UpDatedData.txt") or die "Can't write new file: $!";
while (my $line = <F>) {
$count ++ ;
$row = join ("\n", ($line =~ /.{1,6}/gs));
$split = join ("\t", ($row =~ /.{3}/gs));
print FH "Line NO\t$count\n$split\n";
}
close F;
close FH;
然而
它提供了以下出來把
Line NO 1
ATC GCT
GA STG A
T GCT G
Line NO 2
GCC TAG
CC CTT A
G C
這必須有一些與\ n的這行代碼
$split = join ("\t", ($row =~ /.{3}/gs));
被算作一個字符任何人有任何想法如何解決這個問題?
任何幫助將不勝感激。
預先感謝
西尼德
感謝,這是非常有益的 – sinead
不客氣。 – TLP