[go] 문자열 템플릿
Go 언어에서 문자열 템플릿을 사용하는 방법에 대해 알아보겠습니다.
문자열 템플릿이란?
문자열 템플릿은 문자열 안에 변수나 표현식을 삽입할 수 있는 기능을 말합니다. 이는 문자열을 동적으로 생성하고 원하는 포맷으로 표시할 수 있게 해줍니다.
표준 라이브러리의 문자열 템플릿 사용하기
Go 표준 라이브러리에서는 text/template
과 html/template
패키지를 사용하여 문자열 템플릿을 다룰 수 있습니다.
package main
import (
"os"
"text/template"
)
func main() {
tmpl, err := template.New("example").Parse("Hello, {{.Name}}")
if err != nil {
panic(err)
}
data := map[string]string{"Name": "World"}
err = tmpl.Execute(os.Stdout, data)
if err != nil {
panic(err)
}
}
위의 예제에서는 text/template
패키지를 사용하여 간단한 문자열 템플릿을 파싱하고 실행하는 방법을 보여줍니다.
사용자 정의 함수와 조건문
또한, text/template
패키지는 사용자 정의 함수와 조건문 등의 제어 구조를 템플릿에 적용할 수 있도록 다양한 기능을 제공합니다.
package main
import (
"os"
"text/template"
)
func main() {
funcMap := template.FuncMap{
"addOne": func(x int) int {
return x + 1
},
}
tmpl, err := template.New("example").Funcs(funcMap).Parse("Result: {{addOne .Value}}")
if err != nil {
panic(err)
}
data := map[string]int{"Value": 5}
err = tmpl.Execute(os.Stdout, data)
if err != nil {
panic(err)
}
}
위의 예제에서는 addOne
이라는 사용자 정의 함수를 템플릿에 적용하는 방법을 보여줍니다.
마치며
Go 언어에서는 표준 라이브러리를 활용하여 간편하게 문자열 템플릿을 다룰 수 있습니다. 이를 통해 동적인 문자열 생성과 다양한 제어 구조를 적용하여 템플릿을 다룰 수 있게 되며, 좀 더 유연하고 효과적인 코드를 작성할 수 있습니다.
더 자세한 내용은 text/template 패키지 문서를 참고하시기 바랍니다.