C++函数,用于判断 unicode 点是否为'letter'而不是标点符号数

C++ function that tells if a unicode point is a 'letter' and not number of punctuation

本文关键字:letter 标点符号 用于 函数 判断 unicode 是否 C++      更新时间:2023-10-16

是否有C++函数可用于决定给定的Unicode点是否为字母?我指的是正则表达式中经常被描述为p{L}的内容。因此,它可以是拉丁字母、希腊字母、西里尔字母或其他字母,而不是标点符号、数字等,在unicode中,这些字母也由其他几个大的代码点范围表示。

所以我想要一个类似的函数:

bool isUnicodeLetter(int32 codepoint);

也许在医院或重症监护室的图书馆?

在ICU4C中,函数称为u_isalpha():

UBool u_isalpha(UChar32 c)

确定指定的代码点是否为字母字符。

适用于一般类别";L";(字母)。

但使用时要小心,因为它很容易被滥用。u_isalpha()uchar.h中的其他函数仅设计用于提供对Unicode字符数据的低级访问。