0
我已經有了一個腳本,它從表單上的文件輸入中獲取文件名,並在剝離掉一些不需要的細節後將其放入文本字段中。Javascript - 刪除部分字符串。
我上傳的所有文件都會用一個關鍵詞
注意,這是一個Chrome擴展,以便X瀏覽器的支持是沒有必要的標記。
var filename = $("uploaded_data").val().toLowerCase();
filename = filename.replace(/_/g, " ").replace(/-/g, " ").replace("c:\\fakepath\\", "");
type_index[1] = filename.indexOf("red");
type_index[2] = filename.indexOf("blue");
type_index[3] = filename.indexOf("green");
type_index[4] = filename.indexOf("purple");
type_index[5] = filename.indexOf("magenta");
for (i=0 ; i > -1 ; i++) {
if (type_index[i] > -1)
{
filename_final = filename.substring(type_index[i]);
break;
}
}
$("#material_title").val(filename_final);
現在這段代碼工作正常,但是,我不希望顏色成爲文件名的一部分。 例如,如果輸入文件被稱爲'test_red_name_low.jpg',那麼文本字段應該是'name low.jpg'。目前,上面的代碼輸出'red name low.jpg'。其他時候,文件名可能是'this_is_a_test-blue_happy.jpg',它應該輸出'happy.jpg'。
type_index數組最終將保存大量的值,因此替換將是一個非常漫長的過程。
對此有何建議?
這很好。我唯一的保留意見是,我可能有數百種顏色,並且必須鍵入它們纔會使腳本難以管理。有沒有辦法可以使用type_index數組來選擇修剪文件名的點? – AntonCooper
是的。從type_index中查找最高值。然後在該索引之後找到第一個空格。將其存儲爲新索引。在這個新索引之後取一個子串。 –