4

ネストされた関数の未知の数に一致する正規表現 (**) を探しています。そう

expression
function(expression)
function(function(expression))
function(function(function(expression)))
etc.

すべて正常に一致します。ただし、たとえば、最後に閉じ括弧を追加すると、それは一致に含まれません。

(**) 正規表現を使用するよりも解析 (および括弧のカウント) を行う方が簡単であると答えないでください - しばらく頭を悩ませた後、私はすでにそれを知っています!

4

3 に答える 3

5

ネストされた関数の未知の数に一致する正規表現 (**) を探しています。

一部の regex 実装は再帰的マッチング (Perl、PHP、.NET) をサポートしていますが、JavaScript はサポートしていません。したがって、あなたの質問に対する答えは次のとおりです。いいえ、それは不可能です。

于 2012-09-25T14:26:31.500 に答える
0

Bart Kiers の回答によると、一部の正規表現エンジン (Javascript を除く) は再帰的なマッチングを提供する機能を拡張していることに注意してください。

于 2016-08-15T12:18:10.257 に答える