๋ฐ์ํ
Intro
์ฝํ๋ฆฐ์์์ ์ด์ค์ผ์ดํ ๋ฌธ์ (escape character), ๊ทธ๋ฆฌ๊ณ Raw์ ๋ํด ์์๋ณด๋๋ก ํ๊ฒ ์ต๋๋ค.
Escape character
์ด์ค์ผ์ดํ ๋ฌธ์๋, ๋ฌธ์์ด ๋ด์์ ํน์ํ ๊ธฐ๋ฅ์ ์ํํ๋ ๋ฌธ์์ ๋๋ค. ์ญ์ฌ๋์(\) ๊ธฐํธ๊ฐ ๋ถ์ ํน์ํ ๊ธฐ๋ฅ์ ํ๋ ๋ฌธ์ ๋ฆฌํฐ๋ด ์ ๋๋ค. ์ฆ ๋ฌธ์์ด ์์์ ํน๋ณํ ์๋ฏธ๋ก ํด์๋๋ ๋ฌธ์์ ๋๋ค.
๊ตฌ๋ถ | ์๋ฏธ |
\a | ๊ฒฝ๊ณ ์ ์ถ๋ ฅ |
\n | ์ค ๋ฐ๊ฟ, ๊ฐํ (new line) |
\t | ์ํ ํญ์ผ๋ก ์ผ์ ํ ๊ฐ๊ฒฉ ๋์ฐ๊ธฐ, ํญ (tab) |
\b | ๋ฐฑ์คํ์ด์ค๋ก ๋ค๋ก ํ ์นธ ์ด๋ (backspace) |
\r | ๋์ผํ ์ค์ ๋งจ ์ ์นธ์ผ๋ก ์ปค์ ์ด๋ (carriage return) |
\f | ์ถ๋ ฅ ์ฉ์ง๋ฅผ ํ ํ์ด์ง ๋๊น (form feed) |
\\ | \(์ญ์ฌ๋์) ๋ฌธ์ ์ถ๋ ฅ |
\' | '์์ ๋ฐ์ํ ๋ฌธ์ ์ถ๋ ฅ (single quote) |
\" | " ํฐ ๋ฐ์ํ ๋ฌธ์ ์ถ๋ ฅ (double quote) |
\0 | ๋ ๋ฌธ์ ์ถ๋ ฅ (null) |
RAW ๋ฌธ์์ด
์ด์ค์ผ์ดํ ๋ฌธ์๋ฅผ ์ฌ์ฉํ๋ฉด ์ฝ๋๊ฐ ์ง์ ๋ถํด์ง๋๋ค. ์ฝํ๋ฆฐ์์๋ ์ด์ค์ผ์ดํ ๋ฌธ์๋ฅผ ์ฌ์ฉํ๋ ๋์ ์์๊ณผ ๋์์ ํฐ๋ฐ์ดํ๋ฅผ ์ธ ๊ฐ๋ฅผ ์ด์ฉํด raw ๋ฌธ์์ด์ ์ฌ์ฉํ ์ ์์ต๋๋ค.
// input
fun main() {
val name = "Eve"
val memo = """Dear $name, a quick reminder about the
~party we have scheduled next Tuesday at
~the 'Low Cermony Cafe' at Noon. | Please plan to..."""
println(memo.trimMargin("~"))
}
// output
Dear Eve, a quick reminder about the
party we have scheduled next Tuesday at
the 'Low Cermony Cafe' at Noon. | Please plan to...
๋ฌผ๊ฒฐํ(~)๋ฅผ ๊ตฌ๋ถ์ ์ผ๋ก ์ฌ์ฉํ์ฌ ๋ค์๊ณผ ๊ฐ์ด ๋ฉํฐ๋ผ์ธ ๋ฌธ์์ด์ ํํํ ์ ์์ต๋๋ค.
๋ฐ์ํ