>  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秒