正则表达式匹配Unicode和Number字符串

时间:2017-07-25 08:54:53

标签: java android regex

问题描述

我使用正则表达式字符串“Վիկտոր1Ափոյան2”我想获得两个字符串的第一个字母。因此,我将“ՎԱ”因为字符串是unicode我正在考虑正则表达式:

"(\\p{L})\\p{L}*\\s(\\p{L})\\p{L}*

如果字符串不包含数字“1”“2”,那么可以正常工作以获得结果我也尝试使用以下正则表达式:

"(\\p{L}\\p{N})\\p{L}\\p{N}*\\s(\\p{L}\\p{N})\\p{L}\\p{N}*

但这不正确。

是否有类似“\\ p {LN}”的内容,它会同时检查Unicode字母和数字,或者有人知道如何解决此问题?

1 个答案:

答案 0 :(得分:2)

  

是否有类似“\ p {LN}”的内容会同时检查Unicode字母和数字

使用与Unicode字母或数字相匹配的字符类[\p{L}\p{N}]

或者使用带有\p{Alnum}标记的Pattern.UNICODE_CHARACTER_CLASS(或使用(?U)添加模式)。