这是我的理解,java。Regex包不支持命名组(http://www.regular-expressions.info/named.html),所以谁能告诉我一个第三方库,这样做?
我曾经研究过jregex,但它上一次发布是在2002年,它在java5下对我不起作用(诚然,我只是简单地尝试过)。
这是我的理解,java。Regex包不支持命名组(http://www.regular-expressions.info/named.html),所以谁能告诉我一个第三方库,这样做?
我曾经研究过jregex,但它上一次发布是在2002年,它在java5下对我不起作用(诚然,我只是简单地尝试过)。
当前回答
你用jregex会遇到什么问题? 它在java5和java6下工作得很好。
Jregex很好地完成了这项工作(即使上一个版本是2002年的),除非您想等待javaSE 7。
其他回答
对于运行java7之前版本的用户,joni (Oniguruma regexp库的Java端口)支持命名组。文档很少,但对我们来说效果很好。 二进制文件可以通过Maven (http://repository.codehaus.org/org/jruby/joni/joni/)获得。
你用jregex会遇到什么问题? 它在java5和java6下工作得很好。
Jregex很好地完成了这项工作(即使上一个版本是2002年的),除非您想等待javaSE 7。
一个有点老的问题,但我发现自己也需要这个,上面的建议是不够的——因此,我自己开发了一个薄薄的包装:https://github.com/hofmeister/MatchIt
是的,但它的混乱黑太阳班。有一个更简单的方法:
http://code.google.com/p/named-regexp/
命名的regexp是 标准JDK正则表达式 实现,用单 处理命名捕获的目的 .net样式中的组: (?…)。 它可以与Java 5和Java 6一起使用 (使用泛型)。 Java 7将处理命名捕获 群体,所以这个项目不是指 到最后。
对于晚到的人:Java 7添加了命名组。匹配器。group(String groupName)文档。