可以使用正则表达式来提取版本号和版本号后面的文本。以下是一个示例代码:

package main

import (
    "fmt"
    "regexp"
)

func main() {
    input := "2.4.0dev12_test"
    re := regexp.MustCompile(`^([\d.]+)([\w.-]+)$`)
    matches := re.FindStringSubmatch(input)

    if len(matches) == 3 {
        version := matches[1]
        text := matches[2]
        fmt.Println("版本号:", version)
        fmt.Println("文本:", text)
    } else {
        fmt.Println("无法匹配版本号和文本")
    }
}

输出结果为:

版本号: 2.4.0
文本: dev12_test

正则表达式 ^([\d.]+)([\w.-]+)$ 由两个部分组成:

  • ([\d.]+) 匹配一个或多个数字和点,表示版本号。
  • ([\w.-]+) 匹配一个或多个字母、数字、下划线、横线和点,表示版本号后面的文本。

使用 FindStringSubmatch 方法可以找到匹配的结果,其中 matches[1] 表示版本号,matches[2] 表示文本。

请注意,这只是一个简单的示例,可能无法处理所有情况。根据实际需求,你可能需要调整正则表达式来匹配更多的情况

golang 正则提取版本号由数字和点组成和版本号后面的文本由字母数字下划线横线点如:240dev12_test分别提取出240 和 dev12_test

原文地址: https://www.cveoy.top/t/topic/hVGg 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录