HTML Entity 字元實體 字元轉義

2021-09-07 16:01:06 字數 2792 閱讀 2416

1. html entity

2. 字元與entity name的互相轉換

3. 字元與entity number的互相轉換

在編寫html頁面時,需要用到""、"空格"等符號,直接輸入這些符號時,會錯誤的把它們與標記混在一起,非常不利於編碼。

那麼就需要把這些字元進行轉義,以另一種方式抒寫,以相同的形式展現。

在html中,這些字元可稱為html entity,即html 字元實體。乙個html entity都含有2種轉義格式:entity name 和 entity number。

可參考mdn關於html entity的解釋 :

格式: &entityname; 

說明:"&"開頭,";"結尾,以語義的形式描述字元。如字元"

格式: entitynumber; 

說明:""開頭,";"結尾,以編號的形式描述字元。此編號可以為十進位制或十六進製制(以""開頭)等數字格式。

<

p>字元 :<

>

<

p>entity name :<

p>

<

p>entity number(十進位制) :<

p>

<

p>entity number(十六進製制) :<

可看到entity name、 entity number都在頁面顯示為"

包括但不限於以下字元:ascii characters(可見部分)、iso 8859-1 characters、iso 8859-1 symbols、math symbols、greek letters、miscellaneous html entities。

在實際編碼時不是所有字元都要轉義的,比如a-z、a-z等是沒必要轉義的。

entity name 與 字元的互相轉換只能依靠字元對照表轉換。更多字元對照表可參考:

character

entity name

entity number(十進位制) 

!!!"

""##

#$$$

%%%&

&&''

'(((

)))*

**++

+,, ,

-‐ -.

..// 

/:::

;;;<

<

<==

=>

>

>??

?@@ @

[[ [\

\ \]]

]^ˆ^

___`

``}}~˜~

// ascii字符集:char 2 entityname

var asciichartset_c2en = ': '}',

'~': '˜'

}// e.g. 字元轉換為entity name

var oldstr = '(中文)';

var newstr = oldstr.replace(/(\d)/g, function(matched) );

console.log(newstr); // => (中文)

// ascii字符集:entityname 2 char

var asciichartset_en2c = ': '}',

'˜': '~',

}// e.g. entity name轉換為字元

var oldstr = '(中文)';

var newstr = oldstr.replace(/(&.+?;)/g, function(matched) );

console.log(newstr); // => (中文)

string的例項方法 charcodeat() 可把指定字元轉換為編碼:

var charcode = '('.charcodeat(0); // => 40

var entitynumber = '' + charcode + ';' // => (

string的靜態方法 fromcharcode() 可把指定編碼轉換為字元,而entity number的編碼可以為十進位制或16進製制,所以轉換時進行分別處理:

/**

* entity number轉換為字元

* @param entitynumber entitynumber

*/var getcharbyentitynumber = function(entitynumber) else

var char = string.fromcharcode(num);

return char;

}// e.g.

var oldstr = '(中文)';

var newstr = oldstr.replace(/(\d+;)/g, function(matched) );

console.log(newstr); // => (中文)

web開發之路系列文章

課時58 字元實體

我們先來做乙個實驗,想打出來距離三個空格的字,發現無論是再多的空格,回車還是tab鍵,都只顯示乙個空格,由此可以得出結論 1.在html中對空格 會車 tab鍵不敏感,會把多個空格 回車 tab鍵當作乙個空格鍵來處理 2.什麼是字元實體?在html中的字元是被html保留的,有的html字元在htm...

H5字元實體參考

有些字元在 html5 中是保留字。比如,我們不能在文字中使用大於,小於標記或者尖括號,因為瀏覽器可能會誤認為它們是標記。空格 倒感嘆號 貨幣 分 磅 元 斷豎線 節 間隔分音符 版權標識 陰性順序識別符號 角引號 左 邏輯非 軟連字元 註冊商標 商標 間隔長音符 度 加或減 上標 2 上標 3 急...

HTML 字元實體

諸如 之類的符號在html中擁有特殊的含義,所以在文字中使用它們。為了在 html 中顯示小於號 我們需要使用字元實體。一些字元在 html 中擁有特殊的含義,比如小於號 用於定義 html 標籤的開始。如果我們希望瀏覽器正確地顯示這些字元,我們必須在 html 原始碼中插入字元實體。字元實體有三部...