使用正则表达式在C#中操作字符串

时间:2011-07-17 10:21:18

标签: c# .net regex

我目前有一个正则表达式方法,可以从现有的文本文件中删除一系列特定的字符,但我怎么能用字符串代替?

e.g。从s字符串中删除任何出现的“xyz”

到目前为止我的代码:

var result = Regex.Replace(File.ReadAllText(@"Command.bat"), @"test", string.Empty);
System.IO.File.WriteAllText(@"Command.bat", result);

3 个答案:

答案 0 :(得分:1)

呃..它已经用字符串做了。 ReadAllText返回一个字符串,WriteAllText写一个字符串......所以你要做的就是将File.ReadAllText更改为一个字符串,然后你就完成了。

换句话说:

var result = Regex.Replace(@"test string", @"test", string.Empty);
System.IO.File.WriteAllText(@"Command.bat", result);

编辑:

上面的代码可以改写为:

string s = File.ReadAllText(@"Command.bat");
var result = Regex.Replace(s, @"test", string.Empty);
System.IO.File.WriteAllText(@"Command.bat", result);

正如您所看到的,Regex.Replace已经接受了一个字符串,这是否会让它变得更清晰?

答案 1 :(得分:1)

如果您想使用字符串,可以使用字符串的Replace函数。

var line = "bansskgngxyz".Replace("xyz","");

答案 2 :(得分:0)

string s = "xyz";
var newS = Regex.Replace(s, "test", "");