如何解决常规Expresion从fileName查找空格和方括号,不带扩展名
我正在使用javascript,这是我的字符串
let filename1 = "excluder version(1).pdf"
注意:扩展名将是动态的,例如jpg或png
我想用结果替换字符串 如果使用正则表达式该怎么办?
结果或预期结果:
filename = "excluder-version-1.pdf"
解决方法
您可以使用regex [^ a-z0-9] + ,它将用数字替换数字和小字母之外的所有元素。 您也可以使用子字符串获取扩展名,然后再将其添加到最终结果中。
let filename1 = "excluder version(1).pdf"
var extension = filename1.substring(filename1.indexOf('.')+1)
var filename = filename1.substring(0,filename1.indexOf('.'))
filename=filename.replace(/[^a-z0-9]+/g," ").trim().split(" ").join("-")+"."+extension;
console.log(filename)
,
您可以尝试!
let filename1 = "excluder version(1).pdf"
let re = /(\w+)\s(\w+)\((\d+)\)\.(pdf|jpg|png)/;
const matches = filename1.match(re).slice(1);
const newstr = matches.reduce((acc,curr,index) => {
if (index === matches.length - 1) {
return acc + '.' + curr;
}
return acc + '-' + curr;
});
console.log(newstr);
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。