0
我想驗證一個uuid字符串以確保它是有效的時間uuid(即檢查字符串是否爲時間uuid的測試)。使用JavaScript驗證TimeUuid(Node.js)
例如:一個請求帶有一個像這樣的id,作爲字符串:54d890dc-40a5-4686-8d7e-095e3934d99e
(這是uuid v4),有沒有什麼方法可以測試這個uuid是不是一個uuid(v1)或uuid v4 )?
我想驗證一個uuid字符串以確保它是有效的時間uuid(即檢查字符串是否爲時間uuid的測試)。使用JavaScript驗證TimeUuid(Node.js)
例如:一個請求帶有一個像這樣的id,作爲字符串:54d890dc-40a5-4686-8d7e-095e3934d99e
(這是uuid v4),有沒有什麼方法可以測試這個uuid是不是一個uuid(v1)或uuid v4 )?
可以使用正則表達式:如所描述的[這裏]
例如
const index = [
// UUID v1:
/^[0-9A-F]{8}-[0-9A-F]{4}-[1][0-9A-F]{3}-[89AB][0-9A-F]{3}-[0-9A-F]{12}$/i
// UUID v2:
/^[0-9A-F]{8}-[0-9A-F]{4}-[2][0-9A-F]{3}-[89AB][0-9A-F]{3}-[0-9A-F]{12}$/i
// UUID v3:
/^[0-9A-F]{8}-[0-9A-F]{4}-[3][0-9A-F]{3}-[89AB][0-9A-F]{3}-[0-9A-F]{12}$/i
// UUID v4:
/^[0-9A-F]{8}-[0-9A-F]{4}-[4][0-9A-F]{3}-[89AB][0-9A-F]{3}-[0-9A-F]{12}$/i
//UUID v5:
/^[0-9A-F]{8}-[0-9A-F]{4}-[5][0-9A-F]{3}-[89AB][0-9A-F]{3}-[0-9A-F]{12}$/i
].findIndex(x => x.test(stringToTest));
console.log(index === -1 ? 'Unknown UUID' : `UUID version ${index + 1}`);
Here約UUID的regexp
使用正則表達式(https://stackoverflow.com/questions/136505 /搜索換的UUID功能於文本與正則表達式) –