编程语言
首页 > 编程语言> > 如何使用C#将转义符放在特殊字符之前?

如何使用C#将转义符放在特殊字符之前?

作者:互联网

buildLetter.Append("</head>").AppendLine();
buildLetter.Append("").AppendLine();
buildLetter.Append("<style type="text/css">").AppendLine();

假设以上内容驻留在文件中.我想写一个片段
删除任何包含空字符串“”的行,并将转义符放在前面
中间的报价.最终输出将是:

buildLetter.Append("</head>").AppendLine();
buildLetter.Append("<style type=\"text/css\">").AppendLine();

外部的“ ….”不被视为特殊字符.特殊字符可能是单个
引号或双引号.

我可以通过Visual Studio的查找和替换功能来运行它.但是,就我而言
希望将其用c#或VB.NET编写

任何帮助将不胜感激.

解决方法:

也许这符合您的要求:

string s = File.ReadAllText("input.txt");
string empty = "buildLetter.Append(\"\").AppendLine();" + Environment.NewLine;
s = s.Replace(empty, "");
s = Regex.Replace(s, @"(?<="").*(?="")",
         match => { return match.Value.Replace("\"",  "\\\""); }
    );

结果:

buildLetter.Append("</head>").AppendLine();
buildLetter.Append("<style type=\"text/css\">").AppendLine();

标签:asp-net,vb-net,c,net,winforms
来源: https://codeday.me/bug/20191209/2097234.html