2011-01-30 133 views
5

我需要如http://www.unicode.org/Public/5.1.0/ucd/UCD.html#Alphabetic中定義的統一碼字符範圍列表Alphabetic。但是,無論我如何搜索它們,我都無法在Unicode字符數據庫中找到它們。有人可以提供它們的列表,或只是提供具有指定Unicode屬性的字符的搜索工具嗎?統一碼字母字符列表

+0

如果你看我的答案,我已根據你的請求提供了一個搜索工具,爲具有指定的Unicode屬性的字符[我的unichars腳本](http://training.perl.com/scripts/unichars)。請享用! – tchrist 2011-01-30 15:46:22

回答

2

派生核心屬性可以從其他屬性計算。

字母屬性定義爲:生成來自:魯+ 11 + LT + Lm的+羅+ NL + Other_Alphabetic

所以,如果你走在路中,L1,LT,LM,羅所有的字符, N1和所有帶有Other_Alphabetic屬性的字符,您將擁有字母字符。

2

引文從源:Generated from: Lu + Ll + Lt + Lm + Lo + Nl + Other_Alphabetic

這些縮略語似乎解釋here

11

Unicode字符數據庫包含分佈中的所有文本文件。它不僅僅是一個很久以前的單個文件。

字母屬性是派生屬性。

你真的不想爲此使用代碼點範圍。您想正確使用。那是因爲它們太多了。使用unichars script,我們瞭解到,有一萬多隻在基本多文種平面單獨計數漢或韓文:

$ unichars '\p{Alphabetic}' | wc -l 
    10052 

如果我們包括其他16個星光層,現在我們十四歲千:

$ unichars -a '\p{Alphabetic}' | wc -l 
    14736 

如果我們包括漢,韓文,這實際上是按字母順序財產呢,我們只是吹響了屋頂一十萬碼點:

$ unichars -ua '\p{Alphabetic}' | wc -l 
    101539 

我希望你能看到你做的不是想專門枚舉這些使用代碼點範圍。那條路就是瘋狂。

順便說一下,如果您發現unichars script有用, 您可能也喜歡或uninames script

+1

我真的很喜歡你的腳本!他們將是非常有用的解決[我問題](http://stackoverflow.com/questions/6246651/generate-uri-friendly-unicode-code-points-from-integer-counter)我有。非常感謝他們。問題:當我剛剛運行上面的最後一個命令(`unichars -ua'\ p {Alphabetic}'| wc -l`)時,我得到了94332行而不是101539。任何可能的原因是什麼? – 2011-06-13 00:13:03

+1

@Abe:Prolly因爲你還沒有運行Unicode 6.0.0。你正在運行什麼版本的Perl? `corelist -a Unicode`將向您顯示Perl版本與Unicode版本的配對。順便說一句,我現在已經在我的[Unicode toolchest](http://training.perl.com/scripts/)中有了更多的內容。 – tchrist 2011-06-13 00:42:56

1

我發現了UniView網絡應用程序,它提供了一個很好的搜索界面。搜索信件屬性(與未選中的本地)給出14723結果...