วิธีหลบหนี <และ> ภายในแท็ก <pre>


89

ฉันกำลังพยายามเขียนบล็อกโพสต์ที่มีส่วนของโค้ดอยู่ใน<pre>แท็ก ส่วนรหัสประกอบด้วยประเภททั่วไปและใช้<>เพื่อกำหนดประเภทนั้น นี่คือลักษณะของกลุ่ม:

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

HTML ผลลัพธ์จะลบ<>และลงเอยดังนี้:

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

ฉันจะหลีกเลี่ยงไม่<>ให้มันปรากฏใน HTML ได้อย่างไร


3
&lt;และ&gt;
Alan Dong

คุณสามารถใช้ฟอร์แมตเตอร์ออนไลน์: freeformatter.com/html-escape.html
kaore

คำตอบ:


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

17
ฉันรู้สึกแย่ที่ยังไม่มีเทคโนโลยีสำหรับสิ่งนี้
Sathish Kumar kk

แน่นอนเครื่องหมายแอมเพอร์แซนด์ยังเป็นสิ่งที่ต้องอ้างอิงในบริบทเดียวกับวงเล็บเหลี่ยมดังนั้นฉันจึงไม่แน่ใจว่าการใช้ '&' ถ้า '<' และ '>' จำเป็นต้องมีเอนทิตี html มีประโยชน์อย่างไร
Astara

21
<pre>&gt;</pre>

แสดงผลเป็น:

>

ดังนั้นคุณต้องการ:

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

ซึ่งปรากฎว่า:

    PrimeCalc calc = PrimeCalc ใหม่ ();
    Func <int, int> del = calc.GetNextPrime;




2

สิ่งที่rp กล่าวเพียงแค่แทนที่สัญลักษณ์ที่มากกว่า (>) และน้อยกว่า (<) ด้วยเอนทิตี html ที่เทียบเท่า นี่คือตัวอย่าง:

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

สิ่งนี้ควรปรากฏเป็น (คราวนี้ใช้เหมือนกันทุกประการโดยไม่มีช่องว่างที่นำหน้าสำหรับ markdown):

    PrimeCalc calc = PrimeCalc ใหม่ ();
    Func <int, int> del = calc.GetNextPrime;

-1

อาจเป็นสิ่งที่เฉพาะเจาะจงสำหรับซอฟต์แวร์บล็อกของคุณ แต่คุณอาจต้องการลองใช้สตริงต่อไปนี้ (ลบอักขระขีดล่าง): & _lt; & _gt;


-4

วิธีที่ดีกว่าคือไม่ต้องกังวลเกี่ยวกับรหัสอักขระเลย เพียงห่อโค้ดทั้งหมดของคุณไว้ใน<pre>แท็กดังต่อไปนี้

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

คุณจะต้องเปิดใช้งาน jQuery เพื่อให้ใช้งานได้


1
อย่างนี้ไม่ดีกว่า จากนั้นคุณจะต้องหลีกเลี่ยงเนื้อหาของคุณสำหรับ JavaScript ในบางกรณีก็ยังสามารถแยก JavaScript ออกได้ ตัวอย่างเช่นหากมีเนื้อหา</pre>อยู่ในนั้นจะเป็นอย่างไร
Brad
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.