首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >MaltParser 1.5 PatternSyntaxException

MaltParser 1.5 PatternSyntaxException
EN

Stack Overflow用户
提问于 2015-07-02 02:23:39
回答 1查看 46关注 0票数 0

我需要使用MaltParser 1.5版本来解析俄语句子。因此,当我尝试键入cmd next命令时:

代码语言:javascript
复制
java -jar malt.jar 

我得到了下一个例外:

代码语言:javascript
复制
C:\malt1.5>java -jar malt.jar
Exception in thread "main" java.lang.ExceptionInInitializerError
        at org.maltparser.MaltConsoleEngine.<init>(MaltConsoleEngine.java:29)
        at org.maltparser.Malt.main(Malt.java:17)
Caused by: java.util.regex.PatternSyntaxException: Unclosed character class near index 17
^.*malt[^\]*\.jar$
                 ^
        at java.util.regex.Pattern.error(Unknown Source)
        at java.util.regex.Pattern.clazz(Unknown Source)
        at java.util.regex.Pattern.sequence(Unknown Source)
        at java.util.regex.Pattern.expr(Unknown Source)
        at java.util.regex.Pattern.compile(Unknown Source)
        at java.util.regex.Pattern.<init>(Unknown Source)
        at java.util.regex.Pattern.compile(Unknown Source)
        at org.maltparser.core.helper.SystemInfo.<init>(SystemInfo.java:28)
        at org.maltparser.core.helper.SystemInfo.<clinit>(SystemInfo.java:21)
        ... 2 more

我尝试使用JRE 1.5和1.8.45运行此命令-结果相同。

EN

回答 1

Stack Overflow用户

发布于 2015-07-02 19:30:28

问题似乎出在正则表达式的[^\]部分。[部件启动一个字符类。通常,]结束一个字符类,但是它用\]括起来,所以您已经编写了一个字符类,它包含除]*.jar$之外的所有字符,并且没有终止。

如果字符类应该包含除反斜杠之外的所有内容,则它应该是[^\\]而不是[^\]。要将正则表达式编写为Java string,您将需要额外的引号级别:"[^\\\\]"。一层引号用于正则表达式,另一层用于字符串。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/31168872

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档