[英]node.js replace regex special characters
我正在清理文件名,例如
從
zx5-565x372.jpg?642e0d
至
zx5-565x372.jpg
具體來說,我想刪除?
后跟6個小寫字母數字字符。
我已經嘗試過正則表達式
modified = original.replace("\?\w{6}", "")
其中\\w
與[a-zA-Z0-9_]
相同,而{6}
為6,但沒有喜悅。
有人能告訴我正確的方法嗎?
您使用的是字符串,而不是RegExp。
var modified = original.replace(/\?\w{6}$/, "");
modified = original.replace("\?\w{6}", "")
\_______/
這只是一個字符串文字,不匹配為正則表達式模式。
您實際上是用空字符串替換字符串?w{6}
(因為轉義的?
和w
沒有特殊含義)。
改用正則表達式文字:
modified = original.replace(/\?\w{6}/, "");
或者只是放松您的正則表達式要求,以防格式更改:
modified = original.replace(/\?.*/, "");
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.