Cómo escapar <y> dentro de las etiquetas <pre>

89

Estoy tratando de escribir una publicación de blog que incluya un segmento de código dentro de una <pre>etiqueta. El segmento de código incluye un tipo genérico y se utiliza <>para definir ese tipo. Así es como se ve el segmento:

<pre>
    PrimeCalc calc = new PrimeCalc();
    Func<int, int> del = calc.GetNextPrime;
</pre>

El HTML resultante elimina el <>y termina así:

PrimeCalc calc = new PrimeCalc();
Func del = calc.GetNextPrime;

¿Cómo escapo <>para que aparezcan en el HTML?

urini
fuente
3
&lt;y&gt;
Alan Dong
Puede usar un formateador en línea: freeformatter.com/html-escape.html
kaore

Respuestas:

113
<pre>
    PrimeCalc calc = new PrimeCalc();
    Func&lt;int, int&gt; del = calc.GetNextPrime;
</pre>
John Sheehan
fuente
17
Me siento mal porque todavía no se ha introducido ninguna tecnología para esto.
Sathish Kumar kk
Por supuesto, el ampersand también es algo que debe citarse en el mismo contexto que los corchetes angulares, por lo que no estoy tan seguro de lo útil que es usar '&' si '<' y '>' necesitan entidades html.
Astara
21
<pre>&gt;</pre>

se presenta como:

>

Entonces quieres:

<pre>
    PrimeCalc calc = new PrimeCalc();
    Func&lt;int, int&gt; del = calc.GetNextPrime;
</pre>

que resulta como:

    PrimeCalc calc = nuevo PrimeCalc ();
    Func <int, int> del = calc.GetNextPrime;
Chris Marasti-Georg
fuente
14

Utilice &lt;y &gt;para hacer <y >dentro de html.

crashmstr
fuente
6

&lt;y &gt;respectivamente

ckpwong
fuente
5

Qué tal si:

&lt; and &gt;

¿Espero que esto ayude?

caja de herramientas
fuente
2

Lo que dijo rp , simplemente reemplace los símbolos mayor que (>) y menor que (<) con su entidad html equivalente. He aquí un ejemplo:

<pre>
    PrimeCalc calc = new PrimeCalc();
    Func&lt;int, int&gt; del = calc.GetNextPrime;
</pre>

Esto debería aparecer como (esta vez usando exactamente lo mismo sin los espacios antepuestos para la rebaja):

    PrimeCalc calc = nuevo PrimeCalc ();
    Func <int, int> del = calc.GetNextPrime;
akdom
fuente
-1

Probablemente sea algo específico del software de su blog, pero es posible que desee probar las siguientes cadenas (elimine el carácter de subrayado): & _lt; & _gt;

OwenP
fuente
-4

Una mejor manera de hacerlo es no tener que preocuparse en absoluto por los códigos de caracteres. Simplemente envuelva todo su código dentro de las <pre>etiquetas con lo siguiente

<pre>
${fn:escapeXml('
  <!-- all your code -->
')};
</pre>

Necesitará tener jQuery habilitado para que funcione, aunque.

PanicBus
fuente
1
Esto no es mejor. Luego, necesitaría escapar su contenido para JavaScript. En algunos casos, todavía es posible romper con JavaScript. Por ejemplo, ¿y si el contenido lo tuviera </pre>?
Brad