Java Regex俄语缩写

时间:2018-02-16 22:54:52

标签: java regex

NSGlyphPropertyNull

我正在尝试匹配“О.Г”。在这个片段中。通常,首字母应该没有空格,所以我需要一个可以解释可选空格的正则表达式。

我一直在使用:

_NSGlyphTreeGlyphRangeForCharacterRange missing glyphs 1

但它似乎与此无法正确匹配。我不确定为什么。注意,我在“s”和“。”之前在java中键入О.Г.дов. 。有人会发现错误吗?

1 个答案:

答案 0 :(得分:1)

正则表达式尝试:

([А-Я]\\s*\\.\\s*[А-Я]\\s*\\.)\\s*.*

说明和示例代码:

如果Matcher找到给定正则表达式的匹配项,您将删除捕获的组#1中的所有不必要的空格(在括号()中)并将其打印到控制台:

String source = "О . Г . дов.";
Pattern p = Pattern.compile("(^[А-Я]\\s*\\.\\s*[А-Я]\\s*\\.)\\s*.*");
Matcher m = p.matcher(source);
if(m.find()) {
    String resultWithoutSpaces = m.group(1).replaceAll(" ", "");
    System.out.println(resultWithoutSpaces);
}

输出你得到:

О.Г.