Perlとのスプリットラインver.5.10

Possible Duplicate:
Split with line with perl

私の行:

producător: Carlo Ponti director de imagine: Piero Poletto monteur: Adriana Novelli Distribuţia: Faye Dunaway (Julia) Marcello Mastroianni (Valerion) Caroline Mortimer (Maggie)

私は分割したい:

producător: Carlo Ponti 
director de imagine: Piero Poletto
monteur: Adriana Novelli
Distribuţia: Faye Dunaway (Julia) Marcello Mastroianni (Valerion) Caroline Mortimer (Maggie)

行数は異なる場合があります。 私はLookbehindゼロ幅アサーションを試しました:

split /(?=\S+:\s*)/, $line

コロン( 'director de imagine:' '監督:' 'art director:'など)の前に1行以上の単語(2つか3つ以上)が含まれている場合、

producător: Carlo Ponti director de
imagine: Piero Poletto
monteur: Adriana Novelli
Distribuţia: Faye Dunaway (Julia) Marcello Mastroianni (Valerion) Caroline Mortimer (Maggie)     
4
この質問は他の2回とどのくらい違うのですか?
追加された 著者 CanSpice,

1 答え

これらの「見出し」を除いて、罫線を分割する基準は恣意的に表示されていません。最後のものを除いて、すべての見出しもすべて小文字で表示されます。

私はあなたのヘッダーが静的であると仮定して、次のことを提案しています:

$line =~ /producător: (.*?) director de imagine: (.*?) monteur: (.*) Distribuţia: (.*)/;
print "producător: $1\n";
print "director de imagine: $2\n";
print "monteur: $3\n";
print "Distribuţia: $4\n";

分割にもっと有用な基準を提供できる場合は、より良い回答を提供できるかもしれません。

2
追加された