首页 >后端开发 >Golang >如何使用 Go Regex 查找大括号内的所有字符串匹配?

如何使用 Go Regex 查找大括号内的所有字符串匹配?

Linda Hamilton
Linda Hamilton原创
2025-01-05 17:30:40907浏览

How to Find All String Matches Within Curly Braces Using Go Regex?

在 Go 中查找所有与正则表达式匹配的字符串

问题:

如何查找并返回所有匹配的字符串使用正则表达式出现在给定输入字符串的大括号之间去吗?

解决方案:

要检索大括号之间的所有匹配项,可以使用以下步骤:

  1. 删除正则表达式分隔符: 省略通常用于分隔正则表达式的正斜杠 (/)表达式。
  2. 使用原始字符串文字: 考虑使用原始字符串文字来转义带有单个反斜杠的正则表达式元字符。
  3. 可选 Capturng 组: If你只需要花括号之间的字符串内容,你可以消除捕获

所有匹配示例:

r := regexp.MustCompile(`{[^{}]*}`)
matches := r.FindAllString("{city}, {state} {zip}", -1)

内部内容示例:

r := regexp.MustCompile(`{([^{}]*)}`)
matches := r.FindAllStringSubmatch("{city}, {state} {zip}", -1)
for _, v := range matches {
    fmt.Println(v[1])
}

正则表达式详细信息:

  • {:文字大括号开头字符。
  • ([^{}]*):匹配任何字符序列(0 或更多)不是大括号。
  • }:文字大括号结束字符。

以上是如何使用 Go Regex 查找大括号内的所有字符串匹配?的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn