我有以下字符串:
new k8s.KubeRoleBinding(this, "argocd-application-controller", {
kind: "RoleBinding",
metadata: {
labels: {
"app.kubernetes.io/component": "application-controller",
"app.kubernetes.io/name": "argocd-application-controller",
"app.kubernetes.io/part-of": "argocd",
},
name: "argocd-application-controller",
},
roleRef: {
apiGroup: "rbac.authorization.k8s.io",
kind: "Role",
name: "argocd-application-controller",
},
subjects: [{
kind: "ServiceAccount",
name: "argocd-application-controller",
}],
});我想删除第一次出现kind:的行
到目前为止,我尝试了以下方法,但是它删除了所有的事件。
re := regexp.MustCompile("(?m)[\r\n]+^.*kind.*$")
res := re.ReplaceAllString(str, "$1")带代码的操场链接:https://play.golang.org/p/SMiyTJvKNVF
被通缉的字符串:
new k8s.KubeRoleBinding(this, "argocd-application-controller", {
metadata: {
labels: {
"app.kubernetes.io/component": "application-controller",
"app.kubernetes.io/name": "argocd-application-controller",
"app.kubernetes.io/part-of": "argocd",
},
name: "argocd-application-controller",
},
roleRef: {
apiGroup: "rbac.authorization.k8s.io",
kind: "Role",
name: "argocd-application-controller",
},
subjects: [{
kind: "ServiceAccount",
name: "argocd-application-controller",
}],
});发布于 2021-09-08 16:44:01
找到第一场比赛的位置。使用字符串切片操作删除匹配。
loc := re.FindStringIndex(str)
res := str
if loc != nil {
res = str[:loc[0]] + str[loc[1]:]
}https://stackoverflow.com/questions/69106370
复制相似问题