簡體   English   中英

如何獲取Javascript Array的url屬性以接受變量的正則表達式前綴

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

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM