[Golang] golang中使用正则表达式获取子字符串

如何使用正则来匹配出自己想要的子字符串,我封装了个小函数

func GetOneStringByRegex(str, rule string) (string, error) {
    reg, err := regexp.Compile(rule)
    if reg == nil || err != nil {
        return "", errors.New("正则Compile错误:" + err.Error())
    }
    //提取关键信息
    result := reg.FindStringSubmatch(str)
    if len(result) < 1 {
        return "", errors.New("没有获取到子字符串")
    }
    return result[1], nil
}

使用案例:

我从img[/static/upload/xxxx/xxx.jpg中获取xxxx/xxx.jpg

    url, _ = GetOneStringByRegex(str, "img\\[.*?/static/upload/(.*?)\\]")

 

posted @ 2022-05-12 21:49  唯一客服系统开发笔记  阅读(594)  评论(0编辑  收藏  举报