首页 > 其他分享 >0122-Go-模板字符串

0122-Go-模板字符串

时间:2022-11-28 22:24:09浏览次数:70  
标签:Execute 0122 Stdout t1 template Go os 模板

环境

  • Time 2022-08-25
  • Go 1.19

前言

说明

参考:https://gobyexample.com/text-templates

目标

使用 Go 语言的模板字符串。

示例

package main

import (
    "os"
    "text/template"
)

func main() {

    t1 := template.New("t1")
    t1, err := t1.Parse("Value is {{.}}\n")
    if err != nil {
        panic(err)
    }

    t1 = template.Must(t1.Parse("Value: {{.}}\n"))

    t1.Execute(os.Stdout, "some text")
    t1.Execute(os.Stdout, 5)
    t1.Execute(os.Stdout, []string{
        "Go",
        "Rust",
        "C++",
        "C#",
    })

    Create := func(name, t string) *template.Template {
        return template.Must(template.New(name).Parse(t))
    }

    t2 := Create("t2", "Name: {{.Name}}\n")

    t2.Execute(os.Stdout, struct {
        Name string
    }{"Jane Doe"})

    t2.Execute(os.Stdout, map[string]string{
        "Name": "Mickey Mouse",
    })

    t3 := Create("t3",
        "{{if . -}} yes {{else -}} no {{end}}\n")
    t3.Execute(os.Stdout, "not empty")
    t3.Execute(os.Stdout, "")

    t4 := Create("t4",
        "Range: {{range .}}{{.}} {{end}}\n")
    t4.Execute(os.Stdout,
        []string{
            "Go",
            "Rust",
            "C++",
            "C#",
        })
}

总结

使用 Go 语言的模板字符串。

附录

标签:Execute,0122,Stdout,t1,template,Go,os,模板
From: https://www.cnblogs.com/jiangbo4444/p/16933841.html

相关文章

  • 0123-Go-正则表达式
    环境Time2022-08-25Go1.19前言说明参考:https://gobyexample.com/regular-expressions目标使用Go语言的正则表达式。示例packagemainimport( "bytes" ......
  • 0124-Go-JSON 转换
    环境Time2022-08-25Go1.19前言说明参考:https://gobyexample.com/json目标使用Go语言的JSON。简单值packagemainimport("encoding/json""fmt......
  • 0125-Go-XML 转换
    环境Time2022-08-25Go1.19前言说明参考:https://gobyexample.com/xml目标使用Go语言的XML。示例packagemainimport("encoding/xml""fmt")......
  • go zap日志库
    https://github.com/labring/sealos/blob/main/pkg/utils/logger/logger.gopackagelogger   import( "fmt" "os" "strings"......
  • go源码学习(一):数据结构-数组
    数组是相同类型元素的集合,在内存中对应一块连续的内存空间。数组类型是通过存储的元素类型以及能够存储的大小两个维度来决定的,一旦声明之后大小就不可更改。初始化go语......
  • Android Google开源库——Volley的简单使用
    介绍一下AndroidGoogle开源库——Volley的简单使用volley 项目地址 ​​https://github.com/smanikandan14/Volley-demo​​JSON,图像等的异步下载;网络请求的排序(sc......
  • 关于ThinkPHP中URL及模板文件名大小写的讨论
    参考:​​ThinkPHP3.2.3完全开发手册——URL模式​​​​TP模板因路径大小写获取不到的Bug​​特别地,需要注意的是:调试模式下URL区分大小写;非调试模式下URL不区分大小写。当......
  • jQuery插件FullCalendar日程表实现可扩展Google日历功能
    这个介绍jQuery日历FullCalendar插件是一个非常不错的日历工具,可用于制作日程表或计划安排等,可扩展Google日历功能,制作个性化的日程表,同时可绑定点击事件或拖动事件,使用非常......
  • Django视图中的请求与响应
    一请求一限制http请求视图中的request,实际上是django源码中的HTTPRequest的子类WSGIRequest类的实例对象,主要由django对客户端请求的http协议报文进行解析后得到的请求......
  • Pycharm 搭建 Django 项目
    1.安装需求在使用python框架Django需要注意下面事项Pycharm版本是专业版而不是社区版本Pycharm配置好了python解释器(一般我们现在用的都是python3)我自己使......