이 사이트의 사람들은 게시물 제목을 꾸미기를 정말로 좋아합니다 ...
Stewie's sequence: + * - / + * - /
그러나이 제목을 페이지 URL에 포함시켜야 할 때 간단합니다.
stewies-sequence
도전
당신의 임무는 게시물 제목을 나타내는 문자열이 주어진 "URL 친화적 인"변환을 출력 / 반환하는 프로그램이나 함수를 만드는 것입니다.
알고리즘은 다음과 같습니다.
- 소문자로 변환 (해당되는 경우)
- 모든 공백 (
), 마침표 (
.
), 쉼표 (,
) 또는 슬래시 (/
)를 대시 (-
) 로 바꾸십시오. - 대시를 제외하고 영숫자가 아닌 문자를 제거하십시오.
- 인접한 대시 그룹 (
a---b -> a-b
)을 축소 하고 앞 / 뒤에있는 것을 제거하십시오.
이 알고리즘은 단순화 된 것이며 사이트의 실제 방법과 항상 동일한 결과를 생성하지는 않습니다.
규칙
- 그 입력을 가정 할 수 있습니다.
- 비어 있지 않습니다.
- 하나 이상의 영숫자를 포함합니다.
- ASCII 범위 32-126의 문자 만 포함 (인쇄 가능)
- 전체 프로그램 또는 기능이 허용됩니다.
- 정확한 작업 사양을 제공하는 내장은 허용 되지 않습니다 .
- 이것은 code-golf 이므로 가장 짧은 솔루션 (바이트)이 이깁니다!
테스트 사례
이 사이트의 대부분의 게시물은 테스트 역할을하지만 다음은 편리한 목록입니다.
Loading... Forever -> loading-forever
N(e(s(t))) a string -> nest-a-string
"Hello, World!" -> hello-world
URL-Friendly titles -> url-friendly-titles
C.U.S.R.S -> c-u-s-r-s
1+2+3+4+...+n = -1/12? -> 1234-n-1-12
How can I use cmp(a,b) -> how-can-i-use-cmpa-b
더 긴 것들은 ...
Export The $PATH Variable, Line-By-Line -> export-the-path-variable-line-by-line
Do n and n^3 have the same set of digits? -> do-n-and-n3-have-the-same-set-of-digits
Quine Anagrams! (Cops' Thread) -> quine-anagrams-cops-thread
The Golfer Adventure - Chapter 1 -> the-golfer-adventure-chapter-1
Bootloader golf: Brainf*** -> bootloader-golf-brainf
그리고 일부 사례 검사 샘플 (자세한 제안은 자유롭게)
0123 -> 0123
a a1 -> a-a1
2-1=1 -> 2-11
if(isalphanum(ch))...
_
밑줄? 밑줄이있을 때를 제외하고 내 코드가 작동합니다.
-
어떻습니까? 그것들을 제거해야합니까? 예를 들어에서asdf-
, 마지막-
을 제거해야합니까?