正则表达式在每个句点之后拆分段落但在缩写之后不拆分

时间:2014-01-01 19:22:15

标签: java regex

我需要将一个段落分成句子。所以这意味着在每个时期之后拆分它,但我还必须考虑句子可以包含例如Anniv的缩写。 Limnol。 INC。我使用lookbehind制作了一个正则表达式,以匹配句点之前的任何缩写。我按照如下缩写列表动态创建正则表达式:

    String regex = "(?<!abbrev1)(?<!abbrev2)\\.";
    //abbrev 1 and abbrev 2 are just examples the regex I use is much longer
    //Then I split the paragraph

    paragraph.split(regex);

这样可行,但问题是当我有像U.S.A.或R.A.F.这样的缩写时,在这种情况下它不会

任何帮助都将受到赞赏 编辑:我想出了这个 http://regexr.com?37rb3

但是id在Java中不起作用,任何想法为什么它不起作用?

1 个答案:

答案 0 :(得分:0)

我建议您在缩写中包含句点,而不是单独表示。或者,您可以使用当前的正则表达式样式将U.S.A.表示为U.S.A