私が抱えている問題は次のとおりです。
私の問題の根本的な原因は、「XML」解析 (XML は引用符で囲まれています。この場合、直接 XML ではないため) と空白です。
これを変換できる必要があります:
"This is a <tag>string</tag>"
の中へ
"This is a {0}"
ネストされたタグなどを処理できる必要があります。私の計画は、以下を使用して置換テキストを取得することでした。
var v = XDocument.Parse(string.Format("<root>{0}</root>", myString),LoadOptions.PreserveWhitespace);
var ns = v.DescendantNodes();
var n = "" + ns.OfType<XElement>().First(node => node.Name != "root");
このコードは、一致するタグの最初のペアを返します。ネスティングなどを処理できます。唯一の本当の問題は、「PreserveWhitespace」オプションを使用しても、改行が削除されることです。 "\r\n"
に変換されます"\n"
。これにより一致が妨げられるため、次のようになります。
myString = myString.Replace(n,"{0}");
期待どおりに動作しません。そのため、空白を無視して、置換を適切に機能させる方法を考え出そうとしていますが、開始方法がわかりません... 考えはありますか?