※ 引述《[email protected] (隱形中)》之銘言:
> 請問如果我有一個檔案,內容如下:
> eddie 168 60
> joanne 160 50
> .
> .
> 三個欄位,中間是以tab來隔開的
> 如果我想讓第一個欄位的資料從第1個字元開始寫
> 第二個欄位的資料從第13個字元開始寫
> 第三個欄位從第20個字元開始寫
> 例:
> 0 1 2 3
> 123456789012345678901234567890
> =================================
> eddie 168 60
> joanne 160 50
> .
> .
> 其中的間隔用一般的space填滿
> 請問我該怎麼著手呢?
> 我想到的第一步應該是用cut把欄位拆開,接下來就不清楚該怎麼做了
> 謝謝 :)
#!/usr/bin/perl
open(DATA,"test.txt");
open(DATA2,">test-news.txt");
foreach (<DATA>) {
chomp($_);
($value1,$value2,$value3) = split(/\t+/);
printf DATA2 ("%- 12s%- 7s%- 10s\n",$value1,$value2,$value3);
}
close(DATA);
close(DATA2);
--
有時候,只做自己也是一件很累人的事。
-在這連誰是誰都搞不清楚的世界裡。
--
※ Origin: 雲林科技大學藍天使 <bbs.yuntech.edu.tw> [From: 140.125.207.90]