簡體   English   中英

python unicodedata庫的C ++實現

[英]C++ implementation of python unicodedata library

新用戶在這里,請保持柔和。

我們正在尋找在c ++中實現一段python代碼的方法,但是它涉及一些稱為unicodedata的復雜unicode庫,尤其是此函數

unicodedata.category('A')  # 'L'etter, 'u'ppercase
'Lu'

在C ++中可以很容易地實現這一點嗎? 假設我們要在在線tensorflow模型服務的上下文中這樣做,將編譯后的python代碼嵌入c ++是否值得? 謝謝!

只需將此Python代碼的輸出粘貼到C ++源文件中:

import unicodedata

print('typedef enum {Cn, Cc, Cf, Co, Cs, Ll, Lm, Lo, Lt, Lu, Mc, Me, Mn, Nd, Nl, No, Pc, Pd, Pe, Pf, Pi, Po, Ps, Sc, Sk, Sm, So, Zl, Zp, Zs} CATEGORY_e;')
print('const CATEGORY_e CHAR_CATEGORIES[] = {%s};' % ', '.join(unicodedata.category(chr(codepoint)) for codepoint in range(0x110000)))

(如果您仍在使用Python 2.x而不是3.x,請用unichr替換chr 。)

現在,您可以在C ++程序中使用一個方便的Unicode字符類別查找表。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM