我目前有一个大文本文件,我试图用#替换""内的任何内容之间的未知文本.我试过用:
string text = File.ReadAllText(@"c:\Users\Zero\Documents\test.txt");
string replacement = "#";
int start = text.IndexOf('"') + 1;
text = text.Replace(text.Substring(start, text.LastIndexOf('"') - start), replacement);
File.WriteAllText(@"c:\Users\Zero\Documents\test.txt", text);
Run Code Online (Sandbox Code Playgroud)
目前,它正在用一行替换文件中的所有文本.换句话说,它正在转变:
你好,你怎么"测试"
这是一个测试"123"测试
"测试一下"
成
"#"
我需要它来做到这一点
你好你好吗 "#"
这是一个测试"#"测试
"#""#"
p.s*_*w.g 10
像这样的正则表达式会派上用场:
"[^"]*"
Run Code Online (Sandbox Code Playgroud)
例如:
text = Regex.Replace(text, "\"[^\"]*\"", "\"#\"");
Run Code Online (Sandbox Code Playgroud)