使用 golang regexp 获取 xlsx 单元格数据?

我使用正则表达式从 .xlsx 文件中获取数据。但我很穷,而且是一个较新的正则表达式。任何人都可以帮助我吗?


package main


import (

        "fmt"

        "regexp"

)


func main() {

        input := `

        <sheetData>

        <row r="2" spans="1:15">

        <c r="A2" s="5" ><v>{{range .txt}}</v></c>

        <c r="B2" s="5" t="s"><v>1</v></c>

        <c r="C2" s="5" t="s"><v>2</v></c>

        <c r="D2" s="5" t="s"><v>3</v></c>

        <c r="E2" s="5" />

        <c r="K2" s="6" t="s"><v>21</v></c>

    </row> 

    <row r="3" spans="1:15">

        <c r="A3" s="5" t="s"><v>0</v></c>

        <c r="B3" s="5" t="s"><v>1</v></c>

        <c r="C3" s="5" t="s"><v>2</v></c>

        <c r="D3" s="5" t="s"><v>3</v></c>

        <c r="E3" s="5" />

        <c r="K3" s="6" t="s"><v>21</v></c>

    </row> 

    </sheetData>`

        r := regexp.MustCompile(`<row[^>]*?r="(\d+)"[^>].*?>.*?[(<v>(.*?)<\/v>.*?)]<\/row>`)

        r2 := regexp.MustCompile(`<v>(.*?)</v>`)

        row:=r.FindAllString(input,-1)

        for _,v:=range row {

        fmt.Println(r.ReplaceAllStringFunc(v, func(m string) string {

               match:=r2.FindAllString(v,-1)

            for kk,vv:=range match {

            fmt.Println(kk,vv)

             fmt.Println(r2.ReplaceAllString(v, ""))             

        }  

      }))

        }

    }   

题:


如何获取字符串 {{range .txt}} ,并去掉标签“...”


如何从 中获取“3” r="3",并从“中获取”A3,B3,C3...”


提前致谢!


慕姐8265434
浏览 199回答 1
1回答
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Go