如何在Golang中用div将每行包装起来?
我有一段文字 我想用div把每一行都包起来 例如,如果文本字符串如下所示如何在Golang中用div将每行包装起来?,go,Go,我有一段文字 我想用div把每一行都包起来 例如,如果文本字符串如下所示 Lorem ipsum dolor sit amet, consectetur adipiscing elit. Nam eget lectus porta metus aliquam tincidunt sed vel enim. <div>Lorem ipsum dolor sit amet,</div> <div>consectetur adipiscing elit.&
Lorem ipsum dolor sit amet,
consectetur adipiscing elit.
Nam eget lectus porta metus aliquam tincidunt sed vel enim.
<div>Lorem ipsum dolor sit amet,</div>
<div>consectetur adipiscing elit.</div>
<div><br/></div>
<div>Nam eget lectus porta metus aliquam tincidunt sed vel enim.</div>
那么我想这样包装它
Lorem ipsum dolor sit amet,
consectetur adipiscing elit.
Nam eget lectus porta metus aliquam tincidunt sed vel enim.
<div>Lorem ipsum dolor sit amet,</div>
<div>consectetur adipiscing elit.</div>
<div><br/></div>
<div>Nam eget lectus porta metus aliquam tincidunt sed vel enim.</div>
Lorem ipsum door sit amet,
献祭精英。
但是,我们选择了一条通往天堂的道路。
有人能告诉我什么是正确的方法吗
谢谢您可以使用
bytes.Buffer
和bufio.NewScanner
,如以下工作示例代码:
主程序包
输入“fmt”
导入“字符串”
输入“bufio”
导入“字节”
func main(){
r:=strings.NewReader(`Lorem ipsum dolor sit amet,
献祭精英。
不,不,不,不,不,不,不
buf:=&bytes.Buffer{}
扫描器:=bufio.NewScanner(r)
对于scanner.Scan(){
s:=scanner.Text()
如果len=0{
s=`
`
}
buf.WriteString(`s+`
`)
}
fmt.Println(buf.String())
}
输出:
<div>Lorem ipsum dolor sit amet,</div>
<div>consectetur adipiscing elit.</div>
<div><br/></div>
<div>Nam eget lectus porta metus aliquam tincidunt sed vel enim.</div>
<div>Lorem ipsum dolor sit amet,</div>
<div>consectetur adipiscing elit.</div>
<div><br/></div>
<div>Nam eget lectus porta metus aliquam tincidunt sed vel enim.</div>
与此工作示例代码类似:
主程序包
输入“fmt”
导入“字节”
导入“html/模板”
导入“字符串”
func main(){
r:=[]字符串{`Lorem ipsum dolor sit amet,`,
`奉献精英,
``,
`不,不,我选择了一条通往天堂的路
buf:=&bytes.Buffer{}
t:=template.Must(template.New(“template”).Parse(“{{range.}}{{}}}\n{{{end}}”))
t、 执行(buf,r)
s:=buf.String()
s=字符串。替换(s,`,`
`,-1)
fmt.Println(s)
}
输出:
<div>Lorem ipsum dolor sit amet,</div>
<div>consectetur adipiscing elit.</div>
<div><br/></div>
<div>Nam eget lectus porta metus aliquam tincidunt sed vel enim.</div>
<div>Lorem ipsum dolor sit amet,</div>
<div>consectetur adipiscing elit.</div>
<div><br/></div>
<div>Nam eget lectus porta metus aliquam tincidunt sed vel enim.</div>
Lorem ipsum door sit amet,
献祭精英。
但是,我们选择了一条通往天堂的道路。
您可以使用bytes.Buffer
和bufio.NewScanner
,如以下工作示例代码:
主程序包
输入“fmt”
导入“字符串”
输入“bufio”
导入“字节”
func main(){
r:=strings.NewReader(`Lorem ipsum dolor sit amet,
献祭精英。
不,不,不,不,不,不,不
buf:=&bytes.Buffer{}
扫描器:=bufio.NewScanner(r)
对于scanner.Scan(){
s:=scanner.Text()
如果len=0{
s=`
`
}
buf.WriteString(`s+`
`)
}
fmt.Println(buf.String())
}
输出:
<div>Lorem ipsum dolor sit amet,</div>
<div>consectetur adipiscing elit.</div>
<div><br/></div>
<div>Nam eget lectus porta metus aliquam tincidunt sed vel enim.</div>
<div>Lorem ipsum dolor sit amet,</div>
<div>consectetur adipiscing elit.</div>
<div><br/></div>
<div>Nam eget lectus porta metus aliquam tincidunt sed vel enim.</div>
与此工作示例代码类似:
主程序包
输入“fmt”
导入“字节”
导入“html/模板”
导入“字符串”
func main(){
r:=[]字符串{`Lorem ipsum dolor sit amet,`,
`奉献精英,
``,
`不,不,我选择了一条通往天堂的路
buf:=&bytes.Buffer{}
t:=template.Must(template.New(“template”).Parse(“{{range.}}{{}}}\n{{{end}}”))
t、 执行(buf,r)
s:=buf.String()
s=字符串。替换(s,`,`
`,-1)
fmt.Println(s)
}
输出:
<div>Lorem ipsum dolor sit amet,</div>
<div>consectetur adipiscing elit.</div>
<div><br/></div>
<div>Nam eget lectus porta metus aliquam tincidunt sed vel enim.</div>
<div>Lorem ipsum dolor sit amet,</div>
<div>consectetur adipiscing elit.</div>
<div><br/></div>
<div>Nam eget lectus porta metus aliquam tincidunt sed vel enim.</div>
Lorem ipsum door sit amet,
献祭精英。
但是,我们选择了一条通往天堂的道路。
对于从一段行生成HTML代码片段的部分,您应该使用以下代码,它负责正确转义HTML
package main
import (
"html/template"
"os"
)
func main() {
data := []string{
"first",
"second",
"<style>body{background-color:lime;}</style>",
"<script>alert('evil')</script>",
}
htmlTemplate := "{{range .}}<div>{{.}}</div>\n{{end}}"
tmpl := template.Must(template.New("").Parse(htmlTemplate))
tmpl.Execute(os.Stdout, data)
}
主程序包
进口(
“html/模板”
“操作系统”
)
func main(){
数据:=[]字符串{
“第一”,
“第二”,
“主体{背景色:石灰;}”,
“警惕(‘邪恶’)”,
}
htmlTemplate:=“{{range.}}{{}}\n{{end}”
tmpl:=template.Must(template.New(“”).Parse(htmlTemplate))
执行(os.Stdout,数据)
}
对于从一段行生成HTML代码片段的部分,您应该使用以下代码,它负责正确转义HTML
package main
import (
"html/template"
"os"
)
func main() {
data := []string{
"first",
"second",
"<style>body{background-color:lime;}</style>",
"<script>alert('evil')</script>",
}
htmlTemplate := "{{range .}}<div>{{.}}</div>\n{{end}}"
tmpl := template.Must(template.New("").Parse(htmlTemplate))
tmpl.Execute(os.Stdout, data)
}
主程序包
进口(
“html/模板”
“操作系统”
)
func main(){
数据:=[]字符串{
“第一”,
“第二”,
“主体{背景色:石灰;}”,
“警惕(‘邪恶’)”,
}
htmlTemplate:=“{{range.}}{{}}\n{{end}”
tmpl:=template.Must(template.New(“”).Parse(htmlTemplate))
执行(os.Stdout,数据)
}
文本是存储在变量中还是存储在文件中?你试过什么?@DavidCullen它存储在一个变量中。答案很有帮助。存储在变量或文件中的文本是什么?你试过什么?@DavidCullen它存储在一个变量中。答案很有帮助。谢谢