문자열 입력이 주어지면 정규 표현식 을 사용하지 않고 입력이 유효한 UUID 인 경우 정확한 값 을 STDOUT 또는 이와 동등한 값 으로 인쇄하는 프로그램을 작성하십시오 .
유효한 UUID는
16 개의 32 자리 숫자로, 하이픈으로 구분 된 5 개의 그룹으로 표시되며 총 8 자 (32 자의 영숫자 및 4 개의 하이픈)에 대해 8-4-4-4-12 형식입니다.
테스트 사례
0FCE98AC-1326-4C79-8EBC-94908DA8B034
=> true
00000000-0000-0000-0000-000000000000
=> true
0fce98ac-1326-4c79-8ebc-94908da8b034
=> true
0FCE98ac-1326-4c79-8EBC-94908da8B034
=> true
{0FCE98AC-1326-4C79-8EBC-94908DA8B034}
=> false (the input is wrapped in brackets)
0GCE98AC-1326-4C79-8EBC-94908DA8B034
=> false (there is a G in the input)
0FCE98AC 1326-4C79-8EBC-94908DA8B034
=> false (there is a space in the input)
0FCE98AC-13264C79-8EBC-94908DA8B034
=> false (the input is missing a hyphen)
0FCE98AC-13264-C79-8EBC-94908DA8B034
=> false (the input has a hyphen in the wrong place)
0FCE98ACD-1326-4C79-8EBC-94908DA8B034
=> false (one of the groups is too long)
0FCE98AC-1326-4C79-8EBC-94908DA8B034-
=> false (has a trailing hyphen)
0FCE98AC-1326-4C79-8EBC-94908DA8B034-123
=> false (too many groups)
0FCE98AC13264C798EBC94908DA8B034
=> false (there is no grouping)
규칙
- 정규식은 허용되지 않습니다
- 정규식 과 같은 리터럴 패턴 일치 는 허용되지 않습니다. 예를 들어,
[0-9a-fA-F]
다른 16 진수 식별자를 사용 하거나 (이것을 호출 할 것n
) 일치nnnnnnnn-nnnn-nnnn-nnnn-nnnnnnnnnnnn
하거나n[8]-n[4]-n[4]-n[4]-n[12]
허용되지 않습니다 - 입력은
STDIN
함수 에서 가져 오거나 함수의 인수로 사용할 수 있습니다. - 입력은 대소 문자를 구분하지 않습니다
- 입력에 줄 바꿈이나 줄 바꿈이 포함 되지 않는다고 가정하는 것이 안전합니다 .
- 입력은 인쇄 가능한 ASCII 문자를 포함 할 수 있습니다 (공백 포함)
- truthy 값 에 인쇄해야
STDOUT
입력 유효한 UUID 경우 상당 - falsey 값 에 인쇄해야
STDOUT
입력이있는 경우 또는 동등 하지 유효한 UUID - 를 사용하는 대신 함수를 사용하는 경우
STDOUT
출력은 함수의 반환 값이 될 수 있습니다. - 진실 / 거짓 값은에 인쇄 할 수 없습니다
STDERR
. - 표준 허점 적용
- 이것은 code-golf 이므로 바이트 단위의 가장 짧은 프로그램이 승리합니다. 행운을 빕니다!
리더 보드
리더 보드와 언어 별 수상자 개요를 모두 생성하는 스택 스 니펫입니다.
답변이 표시되도록하려면 다음 마크 다운 템플릿을 사용하여 헤드 라인으로 답변을 시작하십시오.
## Language Name, N bytes
여기서 N은 제출 크기 (바이트)입니다.
헤더에 여러 숫자를 포함하려면 (예를 들어, 오래된 점수를 받거나 바이트 수에 플래그 포함) 실제 점수가 헤더 의 마지막 숫자 인지 확인하십시오.
## Language Name, <s>K</s> X + 2 = N bytes
\h{8}-\h{4}-\h{4}-\h{4}-\h{12}
( \h
16 진수 숫자입니다)이 유효합니다.