作者热门文章
- r - 以节省内存的方式增长 data.frame
- ruby-on-rails - ruby/ruby on rails 内存泄漏检测
- android - 无法解析导入android.support.v7.app
- UNIX 域套接字与共享内存(映射文件)
我正在尝试使用 golang 正则表达式解析体育比分,但找不到原因,为什么它不解析所有分数部分,而只解析第一个和最后一个。
package main
import (
"fmt"
"regexp"
)
func main() {
var FirstQuarterBasketballRegexp = regexp.MustCompile(`^(\d+:\d+)\s\((?:(\d+:\d+)(?:,\s)?)+\)$`)
fmt.Printf("%q\n", FirstQuarterBasketballRegexp.FindAllStringSubmatch("102:72 (28:17, 27:15, 24:14, 23:26)", -1))
}
它打印一个字符串
[["102:72 (28:17, 27:15, 24:14, 23:26)" "102:72" "23:26"]]
为什么它在一片中只包含 3 个元素?
最佳答案
它返回 3 个元素,因为有第 0 组(整个字符串)和 2 个捕获组:
1. [0-6] `102:72`
2. [29-34] `23:26`
现在,你应该考虑你需要什么,只使用你需要的。
也许,您正在寻找将返回的 (\d+:\d+)
102:72
28:17
27:15
24:14
23:26
试试这个代码(sample program is available here):
func main() {
var FirstQuarterBasketballRegexp = regexp.MustCompile(`\d+:\d+`)
fmt.Printf("%q\n", FirstQuarterBasketballRegexp.FindAllStringSubmatch("102:72 (28:17, 27:15, 24:14, 23:26)", -1))
}
输出:
[["102:72"] ["28:17"] ["27:15"] ["24:14"] ["23:26"]]
关于regex - 使用 golangs 正则表达式解析体育比分,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29433160/
我正在开发一个系统,该系统基本上会记录本地体育俱乐部的结果,数据将包括结果、球队、比赛、球员之类的东西。 我只是想知道数据库设计的最佳解决方案是什么以及如何处理数据库中的“已删除”条目的普遍共识是什么
我是一名优秀的程序员,十分优秀!