-2
ABC-4F-ABC-8D-ABC와 같은 형식으로 고유 참조를 생성해야합니다. 여기서 ABC는 임의의 3 자 문자열, 4F, 8D는 임의의 16 진수입니다. 나는 루비에게 새로운 사람이다. 그래서 이것이 중복된다면 나를 용서해라. 어떻게해야합니까?특수 보안 ID 생성
ABC-4F-ABC-8D-ABC와 같은 형식으로 고유 참조를 생성해야합니다. 여기서 ABC는 임의의 3 자 문자열, 4F, 8D는 임의의 16 진수입니다. 나는 루비에게 새로운 사람이다. 그래서 이것이 중복된다면 나를 용서해라. 어떻게해야합니까?특수 보안 ID 생성
필요한 모든 것이 Ruby에 내장되어 있습니다.
def generate_unique_reference
"#{generate_string(ALPHA, 3)}-#{generate_string(HEX, 2)}-....."
end
내가 떠날거야 :
ALPHA = ('A'..'Z').to_a # might also want to add numbers or lower-case letters?
HEX = ('A'..'F').to_a + (0..9).to_a
def generate_string(alphabet, length)
# pick random elements from the alphabet and concatenate
# until length is reached.
# key method is `sample` which selects a random element from
# an array (the alphabet, in your case)
# you can try it on irb like so:
# [1, 2, 3].sample
end
은 그럼 당신은 뭔가를 할 수 있습니다 : 당신은 당신의 캐릭터 라인을 형성하기 위해 알파벳 인 배열을 만든 다음 그것에서 sample
의를 선택할 수 있습니다
운동을 끝내는 것이 좋습니다 (숙제와 같은 소리입니까?)
고마워요))) 그게 전부입니다 !!!! –
왜이 형식입니까? 아마도 단순한'SecureRandom.uuid'가 더 나은 옵션일까요? – spickermann
내 작업에 언급되었습니다. 부품을 만들고 함께 추가하기 위해 내 자신의 랜덤 화기와 같은 것을 만들어야한다고 생각합니까? –
스택 오버플로에 오신 것을 환영합니다. 귀하의 질문은시기 상조입니다. 시도해 볼 필요가있을 때 문제에 대한 자세한 질문을 할 때 발생합니다. 링크 된 페이지를 포함하여 "[ask]"를 읽으십시오. 코드에 문제가 발생하면 "[mcve]"를 읽으십시오. "[Stack Overflow 사용자들에게 얼마나 많은 연구 노력이있을 것으로 기대합니까?] (http://meta.stackoverflow.com/a/261593/128421)"질문 할 때 우리의 기대치를 설명 할 것입니다. –