Javascript 基于输入设计自定义文件编号字符串

Javascript 基于输入设计自定义文件编号字符串,javascript,string,Javascript,String,我真的需要你的帮助,因为这远远超出了我的javascript编码能力 我想设计一个函数来完成以下两种场景之一: 如果字符串var“fileno”的末尾没有破折号和数字,则重写字符串fileno并在末尾添加破折号和计数 var fileno='test' 变量c=4 fileno='test-4' 如果字符串末尾已经有一个破折号和一个数字,请用下面的新信息替换破折号: var fileno='test-2' 变量c=3 fileno='test-3' 您可以将正则表达式用于: 它的字面意思是:用-

我真的需要你的帮助,因为这远远超出了我的javascript编码能力

我想设计一个函数来完成以下两种场景之一:

  • 如果字符串var“fileno”的末尾没有破折号和数字,则重写字符串fileno并在末尾添加破折号和计数

    var fileno='test'

    变量c=4

    fileno='test-4'

  • 如果字符串末尾已经有一个破折号和一个数字,请用下面的新信息替换破折号:

    var fileno='test-2'

    变量c=3

    fileno='test-3'


  • 您可以将正则表达式用于:

    它的字面意思是:用
    -{c}
    替换
    -{number}
    或字符串末尾的任何内容

    var c=3;
    log('test'.replace(/-\d+$|$/,'-'+c));
    日志('test-4'。替换(/-\d+$|$/,'-'+c))
    如果在倒数第二个位置已经有一个
    -
    ,只需追加一个新号码,或者追加一个新号码

    fileno = fileno.replace(/-\d+$|$/, '-' + c);
    
    if(fileno[fileno.length - 2] === "-"){
      fileno = fileno.substr(0,-1) + c;
    } else {
      fileno += "-" + c;
    }