# ProductCode_Prepare.ps1でのカスタマイズ内容をここに記述する。
  
# ==== カスタマイズ例: 某動画サイトをVideoDownloadHelperでダウンロードした場合のファイル名変換(Watch ABC-123 ～ _n)

#    # パスの抽出
#    $filepath = [System.IO.Path]::GetDirectoryName($fullpath)
#    # 拡張子の抽出
#    $fileext = [System.IO.Path]::GetExtension($fullpath)
#    # 上記以外の抽出
#    $basefilename = [System.IO.Path]::GetFileNameWithoutExtension($fullpath)
#
#    # ファイル名は「Watch 」から始まる
#    if($basefilename -match '^Watch\s(?<productcode>[0-9]*[a-zA-Z]+?[0-9]*?-[0-9]+).*')
#    {
#      # ファイル名に含まれる型番を抽出
#      $productcode = $matches["productcode"]
#
#      if($basefilename -match '.*-(?<number>[0-9]+)$')
#      {
#        # 枝番がついている
#        $number = [int]$matches["number"]
#
#        $subindex = ""
#
#        if($number -gt 0 -and $number -lt 26)
#        {
#          $subindex = 'ABCDEFGHIJKLMNOPQRSTUVWXYZ'.SubString($number,1)
#        }
#
#        $productcode += $subindex
#      }
#      else
#      {
#        if(Test-Path -LiteralPath (Join-Path $filepath "$basefilename-1$fileext"))
#        {
#          # 枝番はついていないが、枝番のついたファイルが存在する → 分割タイトルの最初のパーツ
#          $productcode += "A"
#        }
#      }
#    }

##### dmm.ps1用の設定ファイルを読み込む(存在する場合)
$settings = Join-Path (Split-Path $MyInvocation.MyCommand.Path -parent) "setting.ps1"

# 読み込む場合は $false を $true に変更する
if((Test-Path $settings) -and $false)
{
	. ($settings)

    # dmm.ps1と同様の処理
	# ファイル名からの不要な文字列削除
    foreach($removal in $FileNameRemoval)
    {
        $productcode = $productcode -replace $removal,''
    }

    # ファイル名の静的変換(ファイル名＝型番じゃないファイルに対応のため)
    foreach($conv in $StaticFileNameConversion)
    {
        $productcode = $productcode -replace $conv["regex"],$conv["replacestr"]
    }
}

#

##### そのほか、条件などによってファイル名から得られる型番を加工する場合はここに記述