[英]How do I use string.replace with regular expressions
我正在尝试使用正则表达式和String.replace
从文件名中删除文件扩展名
我正在使用这个正则表达式: /^.*(\\..*)/
应该捕获扩展名,或者至少是一切后的所有内容.
做str.replace(/^.*(\\..*)/,"");
只给我一个空白的字符串。
做str.replace(/^.*(\\..*)/,"");
给了我".pdf"
小提琴: http : //jsfiddle.net/KAK82/
你需要捕获(带(.*)
)你文件的第一位,而不是扩展本身:
var string = "CommercialTribe - Copy (14).pdf"
var re = /^(.*)\..*/;
console.log(string.replace(re,'$1'));
// Output: "CommercialTribe - Copy (14)"
这里有两个选项:
仅匹配扩展名并将其替换为空字符串:
str.replace(/\\.[^.]*$/, "");
匹配整个字符串并捕获除扩展名之外的所有内容,然后替换为该匹配项的内容:
str.replace(/^(.*)\\..*$/, "$1");
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.