2016-06-08 9 views
-1

OK Ich war wundernd, was ist der beste Weg zu versuchen, eine ganze Textdatei für einige Texte zu lesen, wenn es den Text findet, ändert es den Text in der "" Ich weiß, dass das getan werden kann, aber ich habe nie wirklich in das hineingeschaut oder musste das vorher tun und bin nicht sicher, wie ich es angehen soll. Das ist das Zeug, nach dem ich suche. Suche eine Textdatei für einige Text, wenn vorhanden Text in ""

dies ist die Art von Code i

add_weapon("b23r"); 

ändern wollen, und es findet add_weapon ("ersetzen, was in here ....");

weil ich ein Programm habe, wenn ich das Kontrolle-Kästchen treffe, möchte ich es so machen, wenn ich über eine Pistole kopiere, kann ich es die Startwaffe machen, aber um das zu tun muss ich das b23r mit dem neuen Waffennamen ersetzen Ich schiebe das Kästchen und wähle die Option "Waffen kopieren", um den Namen mit der Waffe zu ersetzen.

so zum Beispiel

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

etwas in diese Richtung, weil ich es nur zu arbeiten wollen für Pistolen ich weiß gerade nicht der beste Weg, tho eine Textdatei Blick zu lesen, für die die Zitate finden und ändern innen was diejenigen

ich sah in regex aber es verwirrt mich wirklich und bat hier um zu sehen, ob jemand einen besseren Weg kennt diese

bewerkstelligen

dank im Voraus elfenliedtopfan5

Antwort

1

Ihre Frage ist ziemlich vage, aber wenn ich verstehe, was Sie suchen - Sie möchten alle Instanzen eines Textes (in einer Textdatei) durch einen anderen Wert ersetzen. Weil Sie über regex sprachen, hier ist ein kurzes Beispiel Sie tun dies mit Regex zu erhalten begonnen:

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); 

Ersetzen Sie die REPLACE_HERE in Zeile 4 mit dem, was Sie brauchen.
Außerdem - ich empfehle die Lektüre mehr über Regex.Replace

+0

Danke jemals so viel für Ihre Antwort werde ich diese gehen geben und mehr in sie danken Ihnen für Ihre Antwort und so schnell lesen :) – elfenliedtopfan5

Verwandte Themen