> 2006/04/13 (木) 21:14:20 ◆ ▼ ◇ [qwerty]> > 複数別配列を同期して処理しないといけないので単純にならない
> > もう関数作った
> できたらアプして(;´Д`)後学のために
出来た
91行目あたりの
push ( @tid, $tid_ );
push ( @start, $r_start );
push ( @ch, $ch_ );
の直前にこれを追加
#放送局をマージ
my $start_i = grepindex( $r_start, @start );#開始時間
my $title_i = grepindex( $title_, @title ); #番組名
if( $start_i != -1 && $title_i != -1 )#マージできる可能性
{
#回とサブタイトルは無いことがあるかも
my $number_i = 0;
my $subtitle_i = 0;
if( $number_ ne '' )
{
$number_i = grepindex( $number_, @number );#回
}
if( $subtitle_ ne '' )
{
$subtitle_i = grepindex( $subtitle_, @subtitle );#サブタイトル
}
if( $number_i != -1 && $subtitle_i != -1 )#一致した
{
#$tidは先勝ちで破棄
$ch[$start_i] .= '/'.$ch_;
next;
}
}
適当な所に以下の関数を追加
#配列内index位置取得 複数ヒット非対応
sub grepindex
{
my( $str, @array ) = @_;
my( $i );
for( $i = 0; $i < @array; $i++ )
{
if( $str eq $array[$i] )
{
return $i;
}
}
return -1;
}
参考:2006/04/13(木)20時47分48秒