[英]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.