1
此代碼的輸出用連字符的每個4位分離用正則表達式\ W,但如果我更換\ W到其他正則表達式它不起作用。這是爲什麼?隨機序列生成的正則表達式分離器
這是一個完美的作品。
function gen(length, separator) {
var license = new Array(length + 1).join((Math.random().toString(36) + '00000000000000000').slice(2, 18)).slice(0, length);
return license.toUpperCase().replace(/(\w{4})/g, '$1' + separator).substr(0, length + Math.round(length/4)-1);
}
document.write(gen(16, '-'));
由連字符的每個4位這一個不分離出來。
function gen(length, separator) {
var license = new Array(length + 1).join((Math.random().toString(36) + '00000000000000000').slice(2, 18)).slice(0, length);
return license.toUpperCase().replace(/([A-Z]{4})/g, '$1' + separator).substr(0, length + Math.round(length/4)-1);
}
document.write(gen(16, '-'));
可以添加一些例子來說明這個問題? –
你想用什麼來代替它? – Somrlik
'/([a-z0-9] {4})/ gi'按預期工作。什麼樣的正則表達式不起作用? – casraf