如果存在更改文本内部,则在文本文件中搜索某些文本""

时间:2016-06-08 14:54:09

标签: c#-4.0

好吧,我想知道如果找到文本更改了""中的文本,尝试读取某些文本的整个文本文件的最佳方法是什么?我知道这可以做到但我从来没有真正研究过这个或者之前必须这样做而且我不确定如何接近它。这就是我要找的东西。

这是我想要改变的代码

add_weapon( "b23r" );  

它找到了add_weapon("在这里替换了什么......");

因为我有一个程序,当我点击复选框我想要这样做如果我复制一支手枪我可以使它成为启动武器但是这样做我需要用新的武器名称替换b23r当我按下复选框并点击复制武器我希望它用武器复制替换该名称。

所以例如

if (zombie_colt == true ) 
{
 add_weapon( "zombie_colt" );  
}

沿着这些方向的东西,因为我希望它只适用于手枪我只是不知道阅读文本文件的最佳方式寻找引用并改变其中的内容

我看了正则表达式,但它真的让我感到困惑,并在这里询问是否有人知道更好的方法来完成这个

提前感谢elfenliedtopfan5

1 个答案:

答案 0 :(得分:1)

你的问题很模糊,但如果我理解你在寻找什么 - 你想要用不同的值替换某些文本(在文本文件中)的所有实例。 因为你在谈论正则表达式,这里有一个简短的例子,让你开始使用正则表达式来做这件事:

const string FILENAME = <path to your file>;

string data = File.ReadAllText(FILENAME);
Regex r = new Regex(@"add_weapon\( ""[0-9A-Za-z_]+"" \);");
string s = r.Replace(data, "add_weapon( \"REPLACE_HERE\" );");
File.WriteAllText(FILENAME, s);

将第4行中的REPLACE_HERE替换为您需要的任何内容 此外 - 我建议您详细了解 Regex.Replace