0
在JavaScript中,是否可以使用其他正则表达式定义正则表达式,以便每个正则表达式都是递归定义的?定义彼此之间的正则表达式
例如,我想用这些正则表达式(在彼此来定义)来表示JavaScript编程语言的语法的一小部分:
<functionDefinition> = function <functionName>(<parameterList>){statementList}
<statementList> = (<functionDefinition>| ... other valid statements go here ...) //a series of JavaScript statements or function definitions
//each of these regular expressions are defined in terms of the others, allowing them to be infinitely nested
相互定义的正则表达式的另一个例子是在这里找到:http://en.wikipedia.org/wiki/Backus-Naur_form#示例我想知道是否可以在JavaScript中相互定义正则表达式。 – 2013-03-12 08:49:20
你要求的是[*上下文无关文法*](http://en.wikipedia.org/wiki/Context-free_grammar)。一般来说,正则表达式并没有描述CFG,所以这里是错误的工具。你需要一个合适的解析器(虽然我不知道Javascript,但我有信心说现存的解析库必须存在......) – 2013-03-12 08:50:13
@OliCharlesworth是否可以检查一个字符串是否与上下文无关语法匹配?我想我可能在我原来的问题中滥用了“正则表达式”一词。 – 2013-03-12 08:52:12