2021.04.24 - [이미지맥스, lua/루아 lua] - [lua] 루아에서 랜덤한 문자열을 생성하기
앞서 랜덤한 문자열을 정해진 규칙에 따라 생성해보았습니다. 가령 문자 10자 + 숫자 3자 같은 방법으로 말이죠.
이에 문자열 자동 생성을 보다 더 랜덤한 규칙으로 생성하고 싶어졌습니다.
대문자, 소문자, 숫자 캐릭터를 생성하는 부분을 각각 함수화 하고 이 함수를 랜덤으로 실행하는 방법을 통해 랜덤한 문자가 포함된 테이블을 생성합니다.
이렇게 생성한 테이블에 저장된 문자(캐릭터)들을 조합하여 문자열(스트링)으로 만들어주면 완료입니다!
-- Make Random String
function makeChar1(charsTable)
local char = string.char(math.random(0x41, 0x5A))
table.insert(charsTable, char)
end
function makeChar2(charsTable)
local char = string.char(math.random(0x61, 0x7A))
table.insert(charsTable, char)
end
function makeNum(charsTable)
local char = string.char(math.random(0x30, 0x39))
table.insert(charsTable, char)
end
function combineString(charsTable)
local combine = ''
for i = 1, #charsTable, 1 do
combine = combine..charsTable[i]
end
return combine
end
-- sample
randomChars = {}
for i = 1, 4, 1 do
make_what = math.random(1,3)
if make_what == 1 then
makeChar1(randomChars)
elseif make_what == 2 then
makeChar2(randomChars)
elseif make_what == 3 then
makeNum(randomChars)
end
end
newString = combineString(randomChars)
print(newString)
이미지맥스라면 이렇게 생성한 문자열을 키보드입력함수 Keybd() 를 이용하여 타이핑하신다면 금상첨화입니다.
더 재밌습니다.
'매크로' 카테고리의 다른 글
윈도 11 안드로이드 될때까지 존버 (0) | 2022.02.20 |
---|---|
이미지맥스 유료버전 + 후리기님 스크립트 사용자입니다 (0) | 2022.02.20 |
이미지맥스 비활성 질문 (0) | 2022.02.19 |
쿠키런 매크로 맏드는거 어렵나요? (0) | 2021.05.02 |
데카론m / 알투엠 / 리니지1m C++기반 딥러닝 구현 (0) | 2021.04.28 |
바람위치추적하는매크로도있나요? (0) | 2021.04.27 |
[이미지맥스] 랜덤다이스 광고 한번씩 시간 멈추는 해결방법 (0) | 2021.04.25 |
이미지맥스 질문 드립니다 (0) | 2021.04.24 |
이제 크리티카는 매크로 없나요? (0) | 2021.04.23 |
쿠키런 킹덤 매크로 돌리니까 편하긴 하네요 (0) | 2021.04.22 |