Triple-quoted strings are not only useful for multiline strings but also for creating regex patterns as you don't need to escape a backslash with a backslash.
The following pattern matches a date in the format 13.06.1992 (two digits, a dot, two digits, a dot, four digits):
fun getPattern() = """\d{2}\.\d{2}\.\d{4}"""
Using the month variable, rewrite this pattern in such a way that it matches the date in the format 13 JUN 1992 (two digits, one whitespace, a month abbreviation, one whitespace, four digits).
val month = "(JAN|FEB|MAR|APR|MAY|JUN|JUL|AUG|SEP|OCT|NOV|DEC)"
fun getPattern(): String = TODO()
val month = "(JAN|FEB|MAR|APR|MAY|JUN|JUL|AUG|SEP|OCT|NOV|DEC)"
fun getPattern(): String = """\d{2} $month \d{4}"""
13.06.1992로 값이 들어온다면 포맷을 13 JUN 1992로 표현해야하는 정규표현식을 이용하는 문제이다.
문제에서 month를 문자열로 제공하였고, getPattern()함수를 구현하도록 하였다.
문제 예시를 살펴보면
"""\d{2}\.\d{2}\.\d{4}"""
처럼 입력을 하게되는 경우 값이 어떻게 나오는지 파악할 수 있다.
우리는 d{2}와 d{4} 사이에 몇월인지가 들어가야 한다.
템플릿 변수