2011-07-17 5 views
-2

現在、文字列でこれを行うにはどうしたらよいですか?既存のテキストファイルから特定の一連の文字を削除するregexメソッドがありますか?正規表現を使用してC#で文字列を操作する

sの文字列

私がこれまで持っているコードから「XYZ」のいずれかの発生を削除します。

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

結果はどのようなものですか? –

+0

@James、あなたは文字列変数でこれをやろうとしていますか? – Jethro

+0

'' xyz "'の出現で 's'文字列が表示されません。私の質問が正しく答えるようにしたいのであれば、私は質問とコードサンプルを同期させたままにしておきます。 –

答えて

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

うう...それはすでに文字列でそれをしません。 ReadAllTextは文字列を返し、WriteAllTextは文字列を書き込みます。File.ReadAllTextを文字列に変更すれば完了です。言い換えれば

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

EDIT:

あなたのコードは、上記のように書き換えることができます。

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

あなたが見ることができるように、Regex.Replaceはすでに文字列を受け取り、これはそれをはっきりさせますか?

+0

する必要があります:var result = Regex.Replace(s、@ "test"、string.Empty); ? – James

+0

ダイスはありません。この答えは正しくないので、あなたのための最良の答えはありません。 – James

+1

@James - 答えはまったく正しいです。あなたは上記のコードをしたいのですが、文字列を使いたいと思います。私たちが霊的に派生することを期待する異なる要件を持っていない限り、これはあなたが求めた質問に答えます。また、文字列変数を使用する場合は、@ "test string"を任意のものに置き換えることができます。質問に外部文字列を指定しませんでした。 @ "test string"は 'string s'と同じくらい文字列です –

1

文字列を使用する場合は、文字列のReplace関数を使用できます。

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

" s "文字列はどこにありますか? – James

+0

"bansskgngxyz"は文字列sになります。文字列s = "bansskgngxyz"; – Jethro

関連する問題