求助程序大神

查看 55|回复 8
作者:mhx127   
[color=]第1章
[color=]第10章
[color=]第100章
[color=]第1001章
[color=]........
[color=]这种按最大位数怎么给其他数补零?
[color=]第0001章
[color=]第0010章
[color=]第0100章
[color=]第1001章

大神, 程序

平淡最真   

说具体需求,批量改名?
如果是生成的话直接win+r   输入powershell
然后输入1..1001|%{"第{0:d4}章" -f $_ }
mhx127
OP
  


平淡最真 发表于 2022-12-13 17:34
说具体需求,批量改名?
如果是生成的话直接win+r   输入powershell
然后输入1..1001|%{"第{0:d4}章" -f  ...

阅读目录规则。js可以做吗?
平淡最真   


mhx127 发表于 2022-12-13 17:40
阅读目录规则。js可以做吗?

function test(num, n) {
    return (Array(n).join(0) + num).slice(-n);}
test(1,4)  #0001
test(10,4) #0010
这样?
mhx127
OP
  


平淡最真 发表于 2022-12-13 17:45
function test(num, n) {
    return (Array(n).join(0) + num).slice(-n);}
test(1,4)  #0001

全变成了0010我的天!
平淡最真   


mhx127 发表于 2022-12-13 17:51
全变成了0010我的天!

num是原数字,n是位数,你可以用4
你自己做个for循环啊
平淡最真   

for(i=1;i
平淡最真 发表于 2022-12-13 17:56
num是原数字,n是位数,你可以用4
你自己做个for循环啊

不会,我就会正则。我都是
result.replace(/第(\d[章节])/g,"第000$1")
补零
然后搞了个判定
if (!result.match(/第1/)) {
result.replace(/第0/g,'第')
}
好像这判定循环不了!
mhx127
OP
  

这样试试
result.replace(/第(\d)([章节])/g,"第"+test($1,4)+$2)
平淡最真   


平淡最真 发表于 2022-12-13 18:06
这样试试
result.replace(/第(\d)([章节])/g,"第"+test($1,4)+$2)

不支持,只支持一般的样式
感谢帮
我觉得可以查目录中字符串数量,统计长度,取位数,用位数来补。
您需要登录后才可以回帖 登录 | 立即注册

返回顶部