XML のメッセージ ログを作成する前に、メモリ内の xml ドキュメントから特定の値を置き換えようとしました。
なんとか置換できましたが、正規表現の置換メソッドは他のアイテムも置換しているようです。
私はこれを私が望んでいたよりも少しファンキーにする必要がありましたが、ドキュメント内の要素には異なる XML 名前空間を含めることができます...
string pattern = "(<).*?(ElementName>).*?(<\\/).*?(ElementName>).*?";
string replacementPattern = "(<).*?(ReplacedElementName>)xxxxxxxxxxxxxx(<\\/).*?(ReplacedElementName>).*?";
string messageToLog = Regex.Replace(messageToSanitise, pattern, replacementPattern);
誰かが私が間違っているところを指摘できますか?
[更新 16:11 BST 09/08/2013]
ありがとうダッシュ、私はそれをやろうとしましたが、オブジェクトにはxmlが含まれており、実際にはxmlドキュメント自体ではなく、オブジェクトにいくつかのヘッダーがあり、xmlがドキュメントエンベロープ内にあるように見えます。理想的には、ログに記録する前に情報 (ヘッダーを含む) を失いたくありません。変更しようとしている要素は常に 1 つまたは 2 つ出現し、それ以上でも 1 以下でもありません。