为了账号安全,请及时绑定邮箱和手机立即绑定

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

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

Go
慕姐8265434 2021-09-10 21:45:49
我使用正则表达式从 .xlsx 文件中获取数据。但我很穷,而且是一个较新的正则表达式。任何人都可以帮助我吗?package mainimport (        "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...”提前致谢!
查看完整描述

1 回答

  • 1 回答
  • 0 关注
  • 196 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信