[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
返回列表 发帖
本帖最后由 WHY 于 2019-4-25 22:55 编辑
  1. $n = 2;  #删除第2个段落
  2. $str = [IO.File]::ReadAllText('1.txt', [Text.Encoding]::Default);
  3. $arr = $str -split '(?<=skel:)';
  4. $Len = $arr.Count;
  5. for($i=0; $i -lt $Len; $i++) {
  6.     $m = $arr[$i] -split '(?<=- - \[-?\d+, -?\d+, 1](?:(?!- - \[)[\s\S])*- \[-?\d+, -?\d+, 1])';
  7.     if($m.Count -gt $n) {
  8.         $m[$n-1] = '';
  9.         $arr[$i] = $m -join '';
  10.     }
  11. }
  12. [IO.File]::WriteAllText('2.txt', $arr -join '', [Text.Encoding]::Default);
复制代码
  1. $n, $k = 4, 2;   #第4个段落下移2段
  2. $str = [IO.File]::ReadAllText('1.txt', [Text.Encoding]::Default);
  3. $arr = $str -split '(?<=skel:)';
  4. $Len = $arr.Count;
  5. for($i=0; $i -lt $Len; $i++) {
  6.     $m = $arr[$i] -split '(?<=- - \[-?\d+, -?\d+, 1](?:(?!- - \[)[\s\S])*- \[-?\d+, -?\d+, 1])';
  7.     if($m.Count -gt ($n+$k)) {
  8.         $m[$n+$k-1] += $m[$n-1];
  9.         $m[$n-1] = '';
  10.         $arr[$i] = $m -join '';
  11.     }
  12. }
  13. [IO.File]::WriteAllText('2.txt', $arr -join '', [Text.Encoding]::Default);
复制代码
  1. $n, $k = 4, 2;   #第4个段落上移2段
  2. $str = [IO.File]::ReadAllText('1.txt', [Text.Encoding]::Default);
  3. $arr = $str -split '(?<=skel:)';
  4. $Len = $arr.Count;
  5. for($i=0; $i -lt $Len; $i++) {
  6.     $m = $arr[$i] -split '(?<=- - \[-?\d+, -?\d+, 1](?:(?!- - \[)[\s\S])*- \[-?\d+, -?\d+, 1])';
  7.     if($m.Count -gt $n -and $n -gt $k) {
  8.         $m[$n-$k-1] = $m[$n-1] + $m[$n-$k-1];
  9.         $m[$n-1] = '';
  10.         $arr[$i] = $m -join '';
  11.     }
  12. }
  13. [IO.File]::WriteAllText('2.txt', $arr -join '', [Text.Encoding]::Default);
复制代码

TOP

返回列表