我使用正则表达式来查找和替换双引号内的字符串 . 下面是我使用的正则表达式 . 我得到的输出是新的在正则表达式之前放置 .
int portNum = 5969;
var input = File.ReadAllText(@"C:\Users\aaa\look.ts");
var outputFileText = Regex.Replace(input, @"baseurl(\s*)= (\s*).*?", @"baseurl = " + "\"http://localhost:" + portNum + "\"");
我得到的输出是
var baseurl = "http://localhost:5969/""http://www.google.com/";
预期的产出是
var baseurl= "http://localhost:5969/"
1 回答
你不应该使用贪婪量词
.*?
,否则它将尽可能少地匹配 . 在这种情况下,由于.*?
之后没有任何内容,因此它将匹配0个字符 .为了使它工作,让它贪婪匹配直到结束: