我感兴趣in parsing regexes(不要混淆使用正则表达式进行解析)。是否有适用于Java 1.6正则表达式(或其他语言?)的BNF
[注意:有一个similar older question没有找到Java的答案。]
编辑解释为什么我需要这样做。我们正在为自然语言处理实现一个浅层解析器,它首先识别和标记令牌。然后用正则表达式进一步处理它们。我需要知道正则表达式捕获了哪些组(自动机只捕获每个括号的最后一个),我还想用注释注释正则表达式。
答案 0 :(得分:6)
Here他们指出试图在BNF中描述Perl的正则表达式:
http://www.cs.sfu.ca/~cameron/Teaching/384/99-3/regexp-plg.html
http://www.faqts.com/knowledge_base/view.phtml/aid/25718/fid/200
答案 1 :(得分:2)
我没有专门为java 1.6看到一个;但这是一个开始,也许你可以建立一个完整的BNF:
http://www.users.pjwstk.edu.pl/~jms/qnx/help/watcom/wd/regexp.html#RegularExpressionBNF
...使用模式的java 1.6文档:
http://java.sun.com/javase/6/docs/api/java/util/regex/Pattern.html
答案 2 :(得分:0)
根据SO回复,似乎没有明确的正则表达式。