이 챌린지에서 로그 라이크 같은 게임 Dungeon Crawl Stone Soup 의 자료실 파일을 구문 분석 하여 STDOUT으로 출력해야합니다.
이 영안실 파일은 무엇입니까 ??
당신이 죽으면, 그 캐릭터의 데이터가 들어있는 텍스트 파일이 생성됩니다. 캐릭터가 가진 장비, 지난 몇 차례 동안 일어난 일 및 그가 죽인 몬스터의 수를 볼 수 있습니다.
영안실 파일의 예는 여기에서 찾을 수 있습니다
도전
STDIN에서 해당 파일 중 하나를 가져 와서 구문 분석 한 후 데이터를 STDOUT으로 출력하는 프로그램을 작성해야합니다.
이 문제를 좀 더 쉽게하기 위해 첫 번째 텍스트 블록 만 구문 분석하면됩니다. (까지The game lasted <time> (<turns> turns).
다음 정보를 구문 분석하고 출력해야합니다.
- 버전 번호
- 점수.
- 캐릭터 이름, 타이틀, 레이스 및 클래스.
- 캐릭터 레벨.
- 사망 / 승리의 원인.
- 러닝 횟수가 지속되었습니다.
예:
Dungeon Crawl Stone Soup version <version number> character file.
<score> <name> the <title> (level <level>, 224/224 HPs)
Began as a <race> <class> on Mar 16, 2015.
Was the Champion of the Shining One.
<cause of death/victory>
The game lasted 16:11:01 (<turns> turns).
테스트 사례
테스트 사례 1-승리
출력 예-승리 :
Version: 0.16.0-8-gd9ae3a8 (webtiles)
Score: 16059087
Name: Ryuzilla the Conqueror
Character: Gargoyle Berserker
Level: 27
Cause of Death/Victory: Escaped with the Orb and 15 runes on Mar 17 2015!
Turns: 97605
테스트 사례 2-죽음
출력 예-사망 :
Version: 0.16-a0-3667-g690a316 (webtiles)
Score: 462
Name: 8Escape the Ruffian
Character: Bearkin Transmuter
Level: 6
Cause of Death/Victory: Slain by an orc wielding a +0 trident (3 damage) on level 4 of the Dungeon.
Turns: 3698
규칙
- 이것은 코드 골프 가장 짧은 코드가 승리합니다.
- 동점 일 경우 가장 오래된 답이 이깁니다.
- 표준 허점이 없습니다.
- 파일 입력은 STDIN에서 가져와야합니다.
- 출력은 STDOUT으로 보내 져야합니다
- 출력 전의 레이블 (예 :)
Turns:
은 선택 사항입니다.
Version:
하거나 한 줄에 하나씩 동일한 순서로 정보를 출력하기에 충분합니까?