返回列表 发帖

请求删除此帖,废弃无用了请求删除此帖,废弃无用了

本帖最后由 cl2039996 于 2022-5-8 16:26 编辑

请求删除此帖,废弃无用了请求删除此帖,废弃无用了请求删除此帖,废弃无用了请求删除此帖,废弃无用了

回复 4# went


    尊敬的Went大佬,整洁漂亮的代码。方便我自己修改了一个小参数。
先在有个小请求,就是每次选择后,bat运行完毕 就“请按任意键继续”了,我还得再次启动bat。
而我希望能bat反复提示菜单允许我不关闭和重启bat的情况下,多次选择。不要一次只能选择一个就结束了。
您受累改一下。
今后我多多找您写代码。

TOP

回复 6# went


    明天给您转45元!35元不足以表达对您的谢意!

TOP

点签名就行了

TOP

回复 4# went


    尊敬的went大佬,您把支付方式给我,我明天测试脚本能用后给您转过去辛苦费,真心非常感激

TOP

本帖最后由 went 于 2022-4-6 19:43 编辑
#&cls&cd /d "%~dp0"&@powershell -sta -c "Get-Content '%~0' | Out-String | Invoke-Expression" &pause&exit
cls
#挖空函数
function Hide-Src($num1,$num2,[System.IO.FileInfo]$srt){
    $arr = Get-Content $srt.FullName
    if($arr.Count -lt 4){ return $null }
    $txt = $arr | Select-Object -First 3 | Select-Object -Skip 2
    #正则
    $r = [regex]::new('(?<=>[^<]*)[a-zA-Z](?=[^<]*<)')
    #所有字母个数
    $char_len = $txt.Length - $r.Replace($txt,'').Length
    if($char_len -lt $num2){ return $null }
    #随机位置挖空
    $char_del = $char_len/$num2*$num1
    $r.Matches($txt) | Sort-Object { return Get-Random } | Select-Object -First $char_del | foreach {
        $txt = $txt.SubString(0,$_.Index) + '_' + $txt.SubString($_.Index+1,$txt.Length-$_.Index-1)
    }
    return &{
        '{0}\{1}[{2}分之{3}挖空].srt' -f $srt.Directory.FullName,$srt.BaseName,$num1,$num2
        $arr[0..1]
        $txt
        $arr[3..($arr.Count-1)]
    }
}
$msg = @'
1.全部所有的字母挖空请按1
2.五分之四的字母挖空请按2
3.四分之三的字母挖空请按3
4.三分之二的字母挖空请按4
5.二分之一的字母挖空请按5
6.三分之一的字母挖空请按6
7.四分之一的字母挖空请按7
8.五分之一的字母挖空请按8
请输入
'@
#主循环
while($true){
$a = $b = 0
$chs = Read-Host -Prompt $msg
switch($chs){
'1' { $a=1; $b=1 }
'2' { $a=4; $b=5 }
'3' { $a=3; $b=4 }
'4' { $a=2; $b=3 }
'5' { $a=1; $b=2 }
'6' { $a=1; $b=3 }
'7' { $a=1; $b=4 }
'8' { $a=1; $b=5 }
}
if($a -ne 0 -and $b -ne 0){
Get-ChildItem -Recurse '*.srt' | foreach {
if($_.BaseName -notmatch '\[.*?\]'){
Write-Host $_.FullName
$res = Hide-Src -num1 $a -num2 $b -srt $_
if($res -ne $null){
$res[1..($res.Count-1)] | Out-File -LiteralPath $res[0]
Write-Host $res[0]
}
'-------------------'
}
}
} else { Write-Host '输入无效' }
Write-Host "`r`n按任意键回到主菜单"
[void][System.Console]::ReadKey();cls
}COPY
1

评分人数

    • 5i365: 技术牛X, 感谢分享技术 + 1

TOP

回复 2# zaqmlp


    我暂时支付不起您100元。素材包已经提供。8个需求其实差不多。只要写好第一个需求,其他几个需求只是参数不一样。
这样吧,我等等其他大佬看能不能赏光给我写。如果实在没有其他大佬给些的话,我再逐步增加红包。

TOP

本帖最后由 zaqmlp 于 2022-4-5 21:36 编辑

报酬太少了,这个起码100元;打包几个srt文件发网盘
提供bat代写,为你省时省力省事,支付宝扫码头像支付
微信: unique2random

TOP

返回列表