Golang编译正则表达式以删除“以及在字符串中包含@之后的任何内容

问题描述 投票:0回答:1

如果我有一个看起来像"Abraham Lincoln" @en的字符串。我想要做的是,如果它包含@en然后删除引号,但保留内部并删除@en。

在golang中这样做的最佳方法是什么?

regex go
1个回答
5
投票

一种方法可以根据您的示例输入执行此操作。

package main

import (
   "fmt"
   "regexp"
)

func main() {
   s := `"Abraham Lincoln" @en`
   reg := regexp.MustCompile(`"([^"]*)" *@en`)
   res := reg.ReplaceAllString(s, "${1}")
   fmt.Println(res) // Abraham Lincoln
}

如果您有更多数据在引号后面,您可以随时将表达式更改为:

reg := regexp.MustCompile(`"([^"]*)".*@en`)

GoPlay

© www.soinside.com 2019 - 2024. All rights reserved.