c# - name - xml doc
La mejor forma de procesar citas no estándar en el analizador XML (1)
Esta pregunta ya tiene una respuesta aquí:
Estoy creando un programa que procesa texto con formato XML. Descubrí que cuando los valores de las etiquetas son citas que no son ASCII (comillas dobles / ASCII 34, comillas simples / ASCII 39), el análisis arroja una excepción. Dichas citas pueden provenir de software de edición como Ms Word (formateo automático).
Actualmente analizo cada línea de mi cuadro de texto y reemplazo las comillas antes de procesar el XML. Aquí está el código (en 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]", "/"");
Me pregunto si hay una forma mejor / más correcta / más rápida para lograr esto. Lo que quiero decir con una forma más correcta es que el método debe abarcar casi todas las posibilidades de comillas (he oído que / d puede usarse tanto para 0-9 como para unicode). ¡Gracias por adelantado!
/p{Pi}
clases /p{Pi}
y /p{Pf}
pueden ser útiles para hacer coincidir este tipo de comillas. Sin embargo, no hacen la diferencia entre comillas simples y dobles.
/p{Pi}
-> citas iniciales
/p{Pf}
-> citas de cierre