我想go[^ ]+使用expr. 输出应该是1.17.6和1.18-becaeea119。
go version go1.17.6 linux/amd64
go version devel go1.18-becaeea119 Tue Dec 14 17:43:51 2021 +0000 linux/amd64
但是,这devel部分是可选的,我想不出一种方法来正确地忽略它expr。
expr "$(go version)" : ".*go version go\([^ ]*\) .*"
expr "$(go version)" : ".*go version devel go\([^ ]*\) .*"
使用普通的正则表达式,我会这样做,(?: devel)?但由于某种原因expr不支持?。
有没有办法expr在一个命令中实现这一点?