2016-05-19 44 views
0

我想驗證一段激活碼像5char-5char-5char-5char正則表達式生成密鑰模式一樣遵循

我展示上面的圖案需要檢查在6, 12, 18位置有Dash(-),並有總長度爲23。我是新來的這裏請任何人幫助我在Javascript中生成RegEx。

/[A-Za-z0-9]{5}-[A-Za-z0-9]{5}-[A-Za-z0-9]{5}-[A-Za-z0-9]{5}/ 這是正確的選擇嗎?

+0

字符類型是什麼? (單詞字符,空格等)以及到目前爲止嘗試過的內容? – Kasramvd

+0

Any character + Digit – higunjan

回答

0

你的正則表達式通過你的作品好,才能使其更加優雅像以下:

/^(?:[A-Za-z\d]{5}-){3}[A-Za-z\d]{5}$/ 
+1

'/([A-Za-z \ d] {5} - ){2} [A-Za-z \ d] {5} /'你在這裏犯了錯誤。請用'/([A-Za-z \ d] {5} - ){3} [A-Za-z \ d] {5} /'更新答案。範圍不是{2}應該是{3} – higunjan

+1

使用非捕獲組和位置斷言:'^(?:[A-Za-z \ d] {5} - ){3} [A-Za- d] {5} $' – AKS

0

這個怎麼樣。

Demo

var data = "5char-5char-5char-5char"; 
if(data.match(/^(?:[a-z\d]{5}-){3}[a-z\d]{5}$/,"i")) 
{ 
    console.log("Ok"); 
} 

不要忘記添加^$

+0

'\ w'也會匹配下劃線。 – Kasramvd

+0

@Kasramvd是的。感謝您的評論文章編輯 – mkHun