[英]How to get a Javascript Array url attribute to accept a regex prefix for a variable
這里的第一個問題,希望我不要被破壞。
它涉及JS以及如何在數組中傳遞Regex值。 所以在我的代碼中:
var cube = generateCubeMap( mapId , 100 );
其中mapId只是一個不斷變化的數字,第二個參數也不重要。 不過,稍后會為上述功能創建一個函數:
function generateCubeMap( folderName, tileWidth )
在其內部有一個數組,其屬性為:
url: './textures/cube/' + folderName + '/front.jpg',
總結一下
我需要弄清楚front.jpg可以接受任何前綴的情況,例如:any-characeter.front.jpg(包括后綴點。)
這顯然是錯誤的:
url: './textures/cube/' +/^[^ /]+$/+ folderName + '/front.jpg',
我從控制台獲得:
http:// localhost / public / master / examples / textures / cube //%5E [%5E%20 //] + $ / 7 / front.jpg無法加載資源:服務器響應狀態為404(不是找到)
因此,如何使數組的屬性(url)接受可以接受任何東西的正則表達式-before.front.jpg?
為什么在設置URL之前不去除前綴
url: './textures/cube/' + folderName.split("/").pop() + '/front.jpg',
假設前綴以“ /”分隔
假設對象的url
屬性在某處用作正則表達式,則可以使用以下表達式使該正則表達式接受任何文件夾名稱:
url: './textures/cube/^[^/?\. ]+$/front.jpg',
無需在正則表達式中包含文件夾名稱,因為正則表達式是常規名稱-它會匹配該路徑段中的所有內容。
我從模式中排除了斜杠,空格,問號和點-其他任何字符都將匹配。 這遵循URL規范:
https://url.spec.whatwg.org/#url-code-points
編輯:
抱歉,回答您的問題:
那么如何使數組接受[anything-regex。] front.jpg?
您可以使用以下內容:
[^/? ]*\.?front.jpg
匹配字符串(不是/
?
或空格)的字符串,采用可選的.
,然后期待front.jpg
。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.