시간/숫자

ISO 8601 기간 파서

"P3Y6M4DT12H30M5S"와 같은 문자열을 읽기 쉬운 형태로 분석하거나, 년/월/일/시/분/초로 이런 문자열을 생성합니다.


                        

An ISO 8601 duration (e.g. P3Y6M4DT12H30M5S) is a compact, unambiguous way to write a time span, used by many APIs and data formats, but hard to read without parsing it. This tool translates such a string into plain language and lets you build one from separate fields.

How to use it

Common uses

Things to keep in mind

The leading P stands for "period" and is required, just like the T that separates days from hours in the time part.

The base standard doesn't define a sign for durations — negative durations (to mean "ago") are only supported by specific implementations as an unofficial extension.

이 도구에 대한 아티클: ISO 8601 Duration: 표준 형식으로 기간을 쓰는 방법

자주 묻는 질문

P3Y6M4DT12H30M5S 같은 문자열은 무엇을 의미하나요?

이것은 표준 ISO 8601 기간 형식입니다: P는 "period"(기간)를 의미하며, 그 뒤에 T 문자까지 년/월/일이 오고, 그 후에 시/분/초가 옵니다. 이 예시에서는 3년, 6개월, 4일, 12시간, 30분, 5초입니다.

ISO 기간은 시간 단위의 단순한 기간과 어떻게 다른가요?

기간 계산기처럼 고정 단위와 달리, 여기서 "년"과 "월" 구성 요소는 달력 기반이며 고정된 초 수를 가지지 않습니다 — 정확한 길이는 적용되는 특정 날짜에 따라 달라집니다.

주 형식 P4W가 지원되나요?

예, 하지만 기존 문자열을 파싱할 때만 해당됩니다. 자신만의 문자열을 만들 때는 ISO 8601이 한 문자열에서 주를 다른 구성 요소와 결합하는 것을 허용하지 않으므로 주는 일 단위로 표현해야 합니다.

소수 초나 소수 분을 지정할 수 있나요?

예, 표준은 문자열의 마지막 구성요소에만 소수 부분을 허용합니다 — 예를 들어 PT1.5S(1.5초)나 PT1H30.5M(1시간 30.5분)은 유효하지만, 마지막이 아닌 구성요소의 소수 부분은 유효하지 않습니다.

음수 ISO 기간도 있나요?

기본 ISO 8601 표준은 기간의 부호를 정의하지 않지만, 일부 구현체(이 도구 포함)는 "이전" 또는 반대 방향 기간을 나타내기 위해 앞에 마이너스 부호를 붙이는 것을 지원합니다 — 이는 널리 쓰이지만 비공식적인 확장입니다.

아티클: 시간/숫자

유닉스 시간: 컴퓨터가 1970년부터 시간을 세는 이유

1970년 1월 1일이 대부분의 컴퓨터 시스템에서 시간의 기준점이 된 이유.

Cron 표현식: 작업 일정을 해독하는 방법

*/15 * * * * 같은 표현식을 해독해 작업이 정확히 언제 실행되는지 아는 방법.

진법: 2진법, 8진법, 16진법이 존재하는 이유

CSS에서 색상 #FF5733이 10진수가 아니라 16진수로 표기되는 이유.

비트 연산: AND, OR, XOR이 비트 수준에서 어떻게 동작하는가

비트 AND가 논리 AND와 어떻게 다른지, 그리고 숫자의 개별 비트를 조작해야 하는 이유.

날짜 차이: 날짜 세기가 보이는 것보다 까다로운 이유

윤년 때문에 날짜를 단순하게 빼면 잘못된 결과가 나올 수 있는 이유.

나이 계산: 단순히 연도를 빼는 것이 아닌 이유

태어난 연도를 단순히 빼면 실제보다 한 살 많은 나이가 나올 수 있는 이유.

시간대: UTC가 GMT와 같지 않은 이유

UTC는 1년에 두 번 바뀌지 않지만 런던 시간(GMT/BST)은 바뀌는 이유.

기간 계산기: 시, 분, 초를 올바르게 더하는 방법

분과 초를 더할 때 10진법 덧셈과 마찬가지로 나머지를 다음 자리로 "올림"해야 하는 이유.

주차 번호: 나라마다 주를 세는 방식이 다른 이유

ISO 8601 표준에 따라 1월 1일이 가끔 전년도 52주차나 53주차에 속하는 이유.

로마 숫자: 0과 자릿값이 없는 체계는 어떻게 작동하는가

IV가 6이 아니라 4를 의미하는 이유, 그리고 로마 숫자에서 뺄셈 규칙이 작동하는 방식.

IEEE 754: 코드에서 0.1 + 0.2가 0.3과 같지 않은 이유

거의 모든 프로그래밍 언어에서 0.1 + 0.2가 0.30000000000000004로 나오는 이유.

숫자를 글자로: 숫자를 단어로 바꾸는 이유

은행 문서가 금액을 숫자와 글자로 동시에 쓰는 이유.