6-1.処理 3.エピソードファイルループ処理 とりあえず対象提示

次の解説対象は、長いです。


 # バックアップファイルフォルダ内のファイルを取得する(ファイル名順)

 $itemList = Get-ChildItem ($inptFldr + "\" + "episode*") | Sort-Object { $_.Name }

 #取得したファイルリスト($itemList)をループで1件ずつ処理

 foreach($item in $itemList){

  #タイトル取得

  $titleName=(Get-Content -Path $item.FullName -Encoding utf8)[1..1]

  #見出しチェック

  if($sctnFlg -eq 1){

   #取得したタイトル名と目次配列の値(タイトル置換)が一致していない間ループ

   while($titleName -ne ($sctnArr[$sctnCnt] -replace $rpRgx)){

    #大見出しかチェック(正規表現で判定)

    if($sctnArr[$sctnCnt] -match $bSctRgx){

     #大見出しの出力実行(正規表現で不要部分を置換)

     Write-Output ($bSct+($sctnArr[$sctnCnt] -replace $rpRgx)) | Add-content -Path $otptPth -Encoding utf8

     #目次配列のカウンタ+1

     $sctnCnt=$sctnCnt+1

     continue

    }

    #小見出しかチェック(正規表現で判定)

    if($sctnArr[$sctnCnt] -match $sSctRgx){

     #小見出しの出力実行(正規表現で不要部分を置換)

     Write-Output ($sSct+($sctnArr[$sctnCnt] -replace $rpRgx)) | Add-content -Path $otptPth -Encoding utf8

     #目次配列のカウンタ+1

     $sctnCnt=$sctnCnt+1

     continue

    }

   }

   #目次配列のカウンタ+1

   $sctnCnt=$sctnCnt+1

  }

  if($chptFlg -eq 1){

   Write-Output ($ttlStr+$titleName) | Add-content -Path $otptPth -Encoding utf8

  }

  Write-Output $brk | Add-content -Path $otptPth -Encoding utf8

  #取得開始位置ゲット

  $lnnmbr= Get-Content $item.FullName -Encoding utf8 | select-string $cntntRgx -Encoding utf8


  #ファイルの最大行数取得

  $rowcnt=((Get-Content -Path $item.FullName).Length - 1)

  #内容取得

  $content=(Get-Content -Path $item.FullName -Encoding utf8)[$lnnmbr.LineNumber..$rowcnt]

  #本文部分を出力。文字コードはUTF8

  Write-Output $content | Add-Content -Path $otptPth -Encoding utf8

  #章区切り出力

  Write-Output $brk | Add-content -Path $otptPth -Encoding utf8

  Write-Output $chptDlmt | Add-content -Path $otptPth -Encoding utf8

  Write-Output $brk | Add-content -Path $otptPth -Encoding utf8

 }


なので解説は次からで。

  • Xで共有
  • Facebookで共有
  • はてなブックマークでブックマーク

作者を応援しよう!

ハートをクリックで、簡単に応援の気持ちを伝えられます。(ログインが必要です)

応援したユーザー

応援すると応援コメントも書けます

新規登録で充実の読書を

マイページ
読書の状況から作品を自動で分類して簡単に管理できる
小説の未読話数がひと目でわかり前回の続きから読める
フォローしたユーザーの活動を追える
通知
小説の更新や作者の新作の情報を受け取れる
閲覧履歴
以前読んだ小説が一覧で見つけやすい
新規ユーザー登録無料

アカウントをお持ちの方はログイン

カクヨムで可能な読書体験をくわしく知る