【发布时间】:2022-11-15 19:05:11
【问题描述】:
我有一个字符串,我用 regexp 包拆分了这个字符串。但是我无法创建我需要的正则表达式。
正则表达式代码行:
v = "@636e0e0eac0bd25cd5df92a3$636e0e49ac0bd25cd5df92a5.result.result[0].code.xTrim()"
r, _ := regexp.Compile(`(@[a-zA-Z0-9]+\$[a-zA-Z0-9]+)(.*)`)
variableParts := r.FindStringSubmatch(v)
VariablesParts 数组:
0:“@636e0e0eac0bd25cd5df92a3$636e0e49ac0bd25cd5df92a5.result.result[0].code.xTrim()”
1:“@636e0e0eac0bd25cd5df92a3$636e0e49ac0bd25cd5df92a5”
2:“.result.result[0].code.xTrim()”
这是我想要的结果:
数组长度可以更改,但数组应包含这 4 个字符串。
0:“@636e0e0eac0bd25cd5df92a3$636e0e49ac0bd25cd5df92a5.result.result[0].code.xTrim()”
1: "@636e0e0eac0bd25cd5df92a3$636e0e49ac0bd25cd5df92a5"
2:“.result.result[0].code.xTrim()”
3: ".xTrim()"
我怎样才能得到这个结果。我需要哪个正则表达式字符串?
【问题讨论】:
-
你为什么使用正则表达式?
strings.Split会更简单(也更快) -
至于你的正则表达式的问题:你最后的意思可能是
\.(.*)。