# 検索型番に対する処理
#   productcodeは、ファイル名から生成された型番
#   検索する際の型番を変更する、または追加する
#   戻り値は文字列配列であること

Param($productcode)

try
{
    $result = @($productcode)

    #DMMでは数値部分を5桁にするとマッチするタイトルが増える
    # ABC-123 → ABC00123

    $productcode_base = ""
    $productcode_num = ""

    $productcoderegex = [regex]'([A-Za-z]+)[-_]?([0-9]+)'
    $matches = $productcoderegex.Matches($productcode);

    if($matches.Success)
    {
        # 英字の部分
        $productcode_base = $matches[0].groups[1].value
        # 数字の部分
        $productcode_num = $matches[0].groups[2].value

        # 数字が5桁になるまで先頭に0を足す
        while($productcode_num.Length -lt 5)
        {
            $productcode_num = "0" + $productcode_num
        }

        # ベース部分と数字部分を結合
        $videoproductcode =  $productcode_base + $productcode_num

        # 元から5桁であった場合以外は追加
        if($productcode -ne $videoproductcode)
        {
            # 5桁化された型番を追加
            $result = @($productcode,$videoproductcode)
        }
    }
}
catch
{
    # 例外を起こしたら元に戻す
    $result = @($productcode)
}

return $result
