复杂的ABNF规则转换为正则表达式



这对我来说很难。如何将下面的ABNF规则转换为正则表达式?

*((*LF *CR *(x0 / text) *CR *LF) / CRLF)
((n*r*(x00|text)*r*n*)|rn)*

假设
1.text)之后的*是一个拼写错误
2.您指的是/而不是|(在正则表达式中,管道分隔备选方案,但在ABNF中,您需要使用斜线)。

没那么难。在正则表达式中,使用管道而不是斜杠,并且量词是后缀而不是前缀。空白不会被忽略,除非您处于自由间距模式,您可以使用/x修饰符切换到该模式。使用x00可能更好,尽管x0可能也会起作用。

最新更新