<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title>Random String</title>
<meta name="generator" content="editplus" />
<meta name="author" content="" />
<meta name="keywords" content="" />
<meta name="description" content="" />
</head>
<body>
<script type="text/javascript">
function RndStr() {
this.str = '';
this.pattern = /^[a-zA-Z0-9]+$/;
this.setStr = function(n) {
if(!/^[0-9]+$/.test(n)) n = 0x10;
this.str = '';
for(var i=0; i<n-1; i++) {
this.rndchar();
}
}
this.setType = function(s) {
switch(s) {
case '1' : this.pattern = /^[0-9]+$/; break;
case 'A' : this.pattern = /^[A-Z]+$/; break;
case 'a' : this.pattern = /^[a-z]+$/; break;
case 'A1' : this.pattern = /^[A-Z0-9]+$/; break;
case 'a1' : this.pattern = /^[a-z0-9]+$/; break;
default : this.pattern = /^[a-zA-Z0-9]+$/;
}
}
this.getStr = function() {
return this.str;
}
this.rndchar = function() {
var rnd = Math.round(Math.random() * 1000);
if(!this.pattern.test(String.fromCharCode(rnd))) {
this.rndchar();
} else {
this.str += String.fromCharCode(rnd);
}
}
}
var rndstr = new RndStr();
//대문자+소문자+숫자 16자리 랜덤
rndstr.setType('');
rndstr.setStr(16);
document.write(rndstr.getStr() + "<br />");
//소문자 16자리 랜덤
rndstr.setType('a');
rndstr.setStr(16);
document.write(rndstr.getStr() + "<br />");
//소문자+숫자 16자리 랜덤
rndstr.setType('a1');
rndstr.setStr(16);
document.write(rndstr.getStr() + "<br />");
//대문자 16자리 랜덤
rndstr.setType('A');
rndstr.setStr(16);
document.write(rndstr.getStr() + "<br />");
//대문자+숫자 16자리 랜덤
rndstr.setType('A1');
rndstr.setStr(16);
document.write(rndstr.getStr() + "<br />");
//숫자 10자리 랜덤
rndstr.setType('1');
rndstr.setStr(10);
document.write(rndstr.getStr() + "<br />");
</script>
</body>
</html>

Prev
Rss Feed