2 回答

TA贡献1856条经验 获得超11个赞
你确定这是输出的格式吗?看起来其中之一;
应该是,
. 具有多个值的单个 Link http 标头应采用以下格式(注意“prev”后的逗号)
<page=3>; rel="next",<page=1>; rel="prev",<page=5>; rel="last"
应该,
为每个链接拆分订单。拆分每个链接以;
获取值或键值对,然后如果它们的值匹配<(.*=.*)>
,则丢弃尖括号并使用剩余的键和值。

TA贡献1775条经验 获得超11个赞
这是如何匹配页码的解决方案。
http://play.golang.org/p/kzurb38Fwx
text := `<page=3>; rel="next",<page=1>; rel="prev";<page=2>; rel="last"`
re := regexp.MustCompile(`<page=([0-9]+)>; rel="next",<page=([0-9]+)>; rel="prev";<page=([0-9]+)>; rel="last"`)
matches:= re.FindStringSubmatch(text)
if matches != nil {
next := matches[1]
prev := matches[2]
last := matches[3]
fmt.Printf("next = %s, prev = %s, last = %s\n", next, prev, last)
}
稍后编辑:您可能也可以使用 xml 包来实现相同的结果,通过将该输出解析为 XML,但您需要稍微转换一下输出。
- 2 回答
- 0 关注
- 192 浏览
添加回答
举报