2011-02-06 37 views

回答

1

這些都不是ASCII值,因爲ASCII範圍是0到127,沒有更高的值。代碼點U + 2010 UTF-8連字符寫出來與大家列出有三個字節的值,用所揭示的:

$ perl -CS -e 'print "\x{2010}"' | perl -C0 -ne 'printf "%vd\n",$_' 
226.128.144 

可以使用the uniprops script獲取代碼點的名稱和人物屬性:

與Unicode的 Dash財產
$ uniprops U+2010 
U+2010 ‹‐› \N{ HYPHEN }: 
    \pP \p{Pd} 
    All Any Assigned InGeneralPunctuation Common Zyyy Dash Dash_Punctuation Pd P General_Punctuation Gr_Base Grapheme_Base Graph GrBase Hyphen Punct Pat_Syn Pattern_Syntax PatSyn Print Punctuation 

其他常見的代碼點,包括這些所示the unichars script

$ unichars '\p{Dash}' 
- 45 002D HYPHEN-MINUS 
‐ 8208 2010 HYPHEN 
‑ 8209 2011 NON-BREAKING HYPHEN 
‒ 8210 2012 FIGURE DASH 
– 8211 2013 EN DASH 
— 8212 2014 EM DASH 
― 8213 2015 HORIZONTAL BAR 
⁓ 8275 2053 SWUNG DASH 
⁻ 8315 207B SUPERSCRIPT MINUS 
₋ 8331 208B SUBSCRIPT MINUS 
− 8722 2212 MINUS SIGN 
+0

你能提出一些方法,我可以在Ruby中做到這一點?我是一個新手:D – theReverseFlick 2011-02-06 13:44:37

0

這可能是Unicode。正確的答案是在整個過程中使用Unicode。如果您嘗試將Unicode字符串視爲ASCII,最終您會遇到很多麻煩。

+0

更準確地說,它可能是UTF-8(http://en.wikipedia.org/wiki/UTF-8),這是一種設計成類似ASCII的Unicode編碼(直到遇到一個ASCII中不存在的字符)。 – 2011-02-06 06:50:36

相關問題