本帖最后由 5i365 于 2022-1-20 18:15 编辑
回复 23# idwma
大侠, 请教两个问题:
code3的效果是这样的:
[id:0356EC8B]
[ar:胡歌]
[ti:逍遥叹]
[by:]
[hash:1415e6eab8e8b0538f5fb66526c9eb65]
[al:]
[sign:]
[qq:]
[total:313547]
[offset:0]
[language:eyJjb250ZW50IjpbXSwidmVyc2lvbiI6MX0=]
[00:00.10]胡歌 - 逍遥叹
[00:00.70]作词:陈宇任
------------------------------------------------------------
code4的效果是这样的:
[00:00.10]胡歌 - 逍遥叹
[00:00.70]作词:陈宇任
[00:00.89]作曲:陈宇任
Code4删除了code3中没用的信息, 现在想来个更简单点的, 把所有的 [XXX:XXX] 的内容全删除[即:方括号中有个英文的:], 只留下歌词,顺便把空行也删除掉, 怎样修改这部分代码?
-----------------------------------------------------------
code3:- sc -enc utf8 $($krc -replace '\.krc$', '3.lcr') $(foreach ($match in $decode_bytes -split '\n')
- {
- if ($match -match '\[(\d*),\d*\]') { '[{0:mm:ss.ff}]{1}' -f [datetime]([int64]$matches[1] * 10000), ($match -replace '^\[\d*,\d*\]') }
- else { $match }
- })
复制代码 -----------------------------------------------------------
code4:- sc -enc utf8 $($krc -replace '\.krc$', '4.lcr') $(foreach ($match in ($decode_bytes -split '\n') -replace '^.*\[.*\]\s*$')
- {
- if ($match -match '\[(\d*),\d*\]') { '[{0:mm:ss.ff}]{1}' -f [datetime]([int64]$matches[1] * 10000), ($match -replace '^\[\d*,\d*\]') }
- elseif ($match -ne '') { $match }
- })
复制代码
|