golang正则表达式如何成对匹配并且替换

发布于 2022-09-12 13:22:31 字数 247 浏览 19 评论 0

如题,想要达成效果如下
原字符串 [内容] (xxxx)
结果字符串 http://xxxx/内容

原字符串中可能存在多个符合 []()格式的信息,希望能够全部替换掉

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

耀眼的星火 2022-09-19 13:22:31
package main

import (
    "regexp"
    "fmt"
)

func main() {
    var re = regexp.MustCompile(`(?m)\[([^\[\]]+)\]\s*\(([^()]+)\)`)
    var str = `[内容] (xxxx)`
    var substitution = "http://$2/$1"
    
    fmt.Println(re.ReplaceAllString(str, substitution))
}
撧情箌佬 2022-09-19 13:22:31

js版的:

function toUrl(str) {
    return str.replace(/^\[([^\]]+)\]\s*\(([^)]+)\)$/, 'http://$2/$1');
}

console.log(toUrl('[内容] (xxxx)')); // "http://xxxx/内容"
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文