3

那么在 C++ codecvt/locale 库中是否有一个适当的方面可以用来测试一个字符是否“是”某物?IE 来测试一个字符是否是任何形式的换行符,或者表示数字或空格等?

还是必须手动/使用依赖正则表达式?

4

1 回答 1

2

是的,使用std::ctype方面及其is方法:

std::use_facet<std::ctype<char>>(std::locale()).is(std::ctype_base::digit, '9');

可在此处找到可用的分类掩码。

没有换行符的分类类别;为此,您需要使用 ICUu_getIntPropertyValueUCHAR_LINE_BREAK检查U_LB_MANDATORY_BREAK等。

于 2014-08-21T13:44:13.453 回答