0

たとえば、正規表現で文字列: が見つかり、some\file\path.xmlそれを に変更したいとしますnew_root\some\file\path.xml。regex replace メソッドを使用してこれを行う方法はありますか? そうでない場合、これを行うための好ましい方法は何ですか?

4

2 に答える 2

5

Regex.Replace を使用して、求めていることを実行できるようです。MSDNの正規表現の置換に関する記事を参照してください。

例:

var path = @"C:\some\file\path.xml";
var result = Regex.Replace(path, @"(C:\\)(.*)", "$1new_root\\$2");

結果は C:\new_root\some\file\path.xml です。

于 2013-06-13T14:16:57.830 に答える
0

そのために正規表現は必要ありません。組み込み関数で必要な文字列を見つけて、必要なものと連結するだけです。

より一般的な検索/置換については、これを行うことができます:

  string pattern = @"(?>\w+\\)+\w+.xml";
  string replacement = "new_root\\$0";
  Regex rgx = new Regex(pattern);
  string result = rgx.Replace(input, replacement);
于 2013-06-13T14:11:36.900 に答える