Учитывая следующую строку:
"go: generate mymethod -method = get -service = Profile -output = * OutputProfile"
Я хочу иметь возможность извлечь что-то вроде ["mymethod", ("method", "get"), ("service", "profile"), ("output", "*OutputProfile")]
Я пытался использовать следующее регулярное выражение
regexp.MustCompile("-(.*?)=")
, которое дало мне
[//go:generate mymethod get Profile *OutputProfile]
Это неплохое начало, однако я не могу гарантировать, чтопользователь будет вводить флаги в указанном порядке.Так что простого извлечения значений флага недостаточно.Так что я думаю, может быть, мне нужно сделать оператор switch, чтобы проверить наличие различных регулярных выражений и сохранить их на ходу?У кого-нибудь есть предложения получше?