XML 形式のテキストを処理するプログラムを作成しています。タグ値が非 ASCII 引用符 (二重引用符 / ASCII 34、単一引用符 / ASCII 39) の場合、解析で例外がスローされることがわかりました。このような引用は、Ms Word (自動書式設定) などの編集ソフトウェアから来る場合があります。
現在、テキスト ボックスの各行を解析し、XML を処理する前に引用符を置き換えています。これがコードです(C#で)
int nLines = textBox1.Lines.Length;
for (int i = 0; i < nLines; i++)
{
// get the current line and replace quotes with standard ones
line = Regex.Replace(textBox1.Lines[i], "[\u2018|\u2019|\u201A]", "'");
line = Regex.Replace(line, "[\u201C|\u201D|\u201E]", "\"");
これを達成するためのより良い/より正確な/より速い方法があるのだろうか? より正確な方法とは、そのような方法が引用符のほとんどすべての可能性をカバーするということです (\d は 0-9 と Unicode に使用できると聞きました)。前もって感謝します!