0

ソース コードを含む HTML ファイルを編集しているときに、次の問題に遭遇することがありました。

例えば

<p>C uses statement <pre>include <stdio.h></pre> to include a library</p>

正常に表示するには、手動でに変更する必要があり<stdio.h>ます。&lt;stdio.h&lt;

このような状況での作業が頻繁に行われることを考えると、このマニュアルの変更には多くの時間がかかります。

それに対する良い解決策はありますか?

4

3 に答える 3

1

大なり記号「>」を変更する必要はありません。多くの場合、回避されますが、多くの人々の意見では、これは単なる習慣であり、対称性を提供します。ただし、小なり記号「<」のみ エスケープする必要があります。

手間がかかりすぎる場合は、挿入するコードをコピーして貼り付け、「<」を置き換えてグローバル置換を実行するエディターなどの使用を検討してください。&lt; および「&」による&amp;

HTML でエスケープを回避する唯一の方法は、xmp要素を使用すること<p>C uses statement <xmp>include <stdio.h></xmp> to include a library</p>です。ただし、xmpこれは非標準であり (普遍的にサポートされています)、デフォルトでブロックとしてレンダリングされ、最悪の場合、ブロック要素として解析されます。つまり、<xml>タグは暗黙的に開いている要素を閉じますp。これはもちろんレンダリングに影響します。インラインコードの例xmpでは実用的ではありません

于 2013-05-11T21:42:53.320 に答える
0

ほとんどのテキスト エディターには、 [検索と置換Notepad] オプションが付属しており、そこにコードを貼り付け、[検索と置換] オプションを使用してすべてを in と in に変更します。<&lt;>&gt;

于 2013-05-22T11:13:44.727 に答える
-1

あなたが考えることができるいくつかのオプションがあります

Javascript JavaScript を使用して、次のようなことを行います。

var element = document.getElementsByClassName("code");
//get the innerHTML and change < to &lt; and > to &gt;
element.innerHTML = element.innerHTML.replace(/\</g,"&lt;").replace(/\>/g,"&gt;");

これにより、クラス「コード」を持つ要素が検索され、その入力が読み込まれ、適切な形式に変更されます。

PHP またはその他のサーバー側言語 PHP では、htmlspecialchars() を使用できます。PHP でファイルを読み込んで htmlspecialchars を使用することもできます (これをオンラインで行う方法については、おそらく何千ものチュートリアルがあります)。

使用できるsedでbash(または任意のスクリプト)を使用します。

sed -e 's/\</\&#60;/g' -e 's/\>/\&#62;/g' filename.c > newfile.html

これは、指定したファイル (filename.c) を取得し、 < と > を適切なものに変更し、出力を newfile.html に保存します。これで、新しいファイルからコンテンツをコピペすることができます。

これ が Web サイト用の場合は、サーバー側でテキストをエンコードすることをお勧めします (PHP を使用)。静的サイトの場合は、sed を使用した方が便利かもしれません。また、Web ページごとに数文字しかない場合は、手動で行うことをお勧めします。(または WYSIWYG エディターを使用)

于 2013-05-11T17:28:08.663 に答える