0
嘗試用連字符替換任何非字母數字字符。不明白爲什麼它不應該工作。它返回原始的字符串不變。正則表達式不起作用
item.mimetype = "image/png";
var mimetype = item.mimetype.toLowerCase().replace("/[^a-z0-9]/g",'-');
嘗試用連字符替換任何非字母數字字符。不明白爲什麼它不應該工作。它返回原始的字符串不變。正則表達式不起作用
item.mimetype = "image/png";
var mimetype = item.mimetype.toLowerCase().replace("/[^a-z0-9]/g",'-');
刪除正則表達式引號。
書面,JavaScript是尋找串"/[^a-z0-9]/g"
// This works
"image/png".toLowerCase().replace(/[^a-z0-9]/g,'-');
// And if writing unquoted regular expressions makes you feel icky:
"image/png".toLowerCase().replace(new RegExp("[^a-z0-9]", "g"), '-');
// And if I might do a full rewrite:
"image/png".toLowerCase().replace(/\W/g, '-');
更多here
你已經把一個字符串,而不是一個正則表達式。這樣做:
.replace(/[^a-z0-9]/g,'-');
好吧,我看到,在JavaScript中的正則表達式有它自己的語法。整齊。 – Keyo 2010-08-23 04:39:23
這取決於您用來編寫程序的其他編程語言。Perl和Ruby同時使用'/ a /'語法。 – kiamlaluno 2010-08-23 04:47:03