Regex 使用正则表达式替换Go中的文本
我在Go中工作,我有一个文本文件,我想在其中替换基于正则表达式的文本,但即使我已经测试了正则表达式,并且它说有匹配项,它也不能像预期的那样工作 我在操场上做了一个基本的例子,我得到了同样的结果。我有3个标签相同的文本文件(Regex 使用正则表达式替换Go中的文本,regex,go,Regex,Go,我在Go中工作,我有一个文本文件,我想在其中替换基于正则表达式的文本,但即使我已经测试了正则表达式,并且它说有匹配项,它也不能像预期的那样工作 我在操场上做了一个基本的例子,我得到了同样的结果。我有3个标签相同的文本文件(/==start==和/==end=),第一个文件有效,第二个和第三个文件无效。如何避免正则表达式正确替换文本 这是我使用的代码,我粘贴了所有的字符串,因为我想确保它不会影响我 package main func main() { var re = regexp.
/==start==和/==end=
),第一个文件有效,第二个和第三个文件无效。如何避免正则表达式正确替换文本
这是我使用的代码,我粘贴了所有的字符串,因为我想确保它不会影响我
package main
func main() {
var re = regexp.MustCompile(Myregex)
s := re.ReplaceAllLiteralString(originalString,"replaced")
fmt.Println(s)
}
var Myregex = `\/\/==start==\n(.+\n)*\/\/==end==`
var originalString = `// @Author: someone
// @Date: 2018-01-23T16:46:09-04:00
// @Email: dddddddd@gmail.com
// @Filename: _material.themes.scss
// @Last modified by: Someone
// @Last modified time: 2018-01-23T18:40:39-04:00
@include angular-material-theme($theme);
.app-dark {
@include angular-material-theme($dark-theme);
}
.app-pink {
@include angular-material-theme($pink-theme);
}
//==start==
//==end==`
希望这对你有帮助
func main() {
var re = regexp.MustCompile(Myregex)
s := re.ReplaceAllString(originalString, "replaced")
fmt.Println(s)
}
var Myregex = `//==start==\n.*\n//==end==`
请参见行动:请在问题正文中包含相关代码,而不是链接到它。@Adrian完成!我添加了所有字符串,以确保它不是问题的原因。感谢文本与regex101链接中的文本不同,因此Go示例中不存在匹配项。你也在那里使用pcre而不是Go。您可能还需要一个多行标志。@JimB my bad,我在中更新了内容regex101@SrednyMCasanova:同样,文本不相同,因此匹配无效。