什么是正则表达式的BNF(为了编写完整或部分解析器)

pet*_*ust 11 regex bnf

我对解析正则表达式感兴趣(不要混淆使用正则表达式进行解析).是否有适用于Java 1.6 regexes(或其他语言?)的BNF?

[注意:有一个类似的旧问题,但没有为Java提供答案.]

编辑解释为什么我需要这样做.我们正在为自然语言处理实现一个浅层解析器,它首先识别和标记令牌.然后用正则表达式进一步处理它们.我需要知道正则表达式捕获了哪些组(自动机只捕获每个括号的最后一个),我还想用注释注释正则表达式.

pet*_*ust 0

根据 SO 回复,似乎没有明确的正则表达式。