文件名简化

最近发现某播放器文件列表文件名简化了:

一个字符串数组,去掉相同部分,只留下不同部分,更简洁。

JS 模拟

javascript 复制代码
<html>
<head>
<title>文件名简化</title>
<meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=no">
<title></title>
<style>
h1, td { text-align:center; }
table { margin:auto; border-collapse:collapse; }
th, td { border:1px solid black; padding:10px 50px; }
</style>
</head>
<body>
<h1>文件名简化</h1>
<table id="table">
</table>
<script>
var list = new Array();
for (i=1; i<=16; i++) {  
    var ep = i < 10 ? 'EP0' + i : 'EP' + i;
    var fn = 'Undercover.Miss.Hong.2026.' + ep + '.HD1080P.X264.ACC.Korean.CHS.mp4';
    list.push(fn);
}

var tr = document.createElement('tr');
var th = document.createElement('th');
th.textContent = '原文件名';
tr.appendChild(th);
th = document.createElement('th');
th.textContent = '简化文件名';
tr.appendChild(th);
table.appendChild(tr);

for (i=0; i<list.length; i++) {
    var array = list.at(i).split('.');
    var array1, fn;
    if (i < list.length - 1)
        array1 = list.at(i+1).split('.');
    else
        array1 = list.at(0).split('.');
    for (j=0; j<array.length; j++) {
        if (array[j] != array1[j]) {
            fn = array[j];
            break;
        }
    }  
    var tr = document.createElement('tr');
    var td = document.createElement('td');
    td.textContent = list.at(i);  
    tr.appendChild(td);
    table.appendChild(tr);
    td = document.createElement('td');
    td.textContent = fn;
    tr.appendChild(td);
    table.appendChild(tr);
}
</script>
</body>
</html>

效果

相关推荐
用户842981424181015 分钟前
从 JavaScript 到可运行的字节码 - ByteJS 使用指南
javascript
学以智用1 小时前
wangEditor V5 精简完整参考手册
javascript
用户298698530142 小时前
React 前端实现 Excel 与 CSV 互转:基于 WebAssembly 的浏览器端方案
javascript·react.js·excel
1-1=018 小时前
Vue 3 模板语
前端·javascript·vue.js
风卿18 小时前
看着AI写代码太孤独了,来欣赏星云吧:一个DSH 装饰插件
前端·javascript
牧艺18 小时前
弹层不用再手算坐标了:CSS Anchor Positioning 从原理到可上线
前端·javascript·css
愚坤19 小时前
前端真有意思,JS还能独立做项目?
前端·javascript·github
李纲明21 小时前
微信小程序 getSystemInfo 提示已废弃、屏幕高度算错胶囊还对不齐?getWindowInfo 和 getDeviceInfo 怎么接才稳
javascript·微信小程序·小程序·小程序开发·devdiy
FungLeo1 天前
成为全栈·Vue 管理后台篇·用 fetch 建一层可控的请求内核
前端·javascript·vue.js·http·fetch·formdata·接口封装
用户84298142418101 天前
ByteJS,让重要的 JavaScript 以字节码运行。
javascript