在JS中,函数可以包含函数(反过来可以包含函数,等等):
- x = function() {
- this.y = function() { /* ... */ };
- function z() { /* ... */ }
- };
此外,您可以使用包含(子)字符串的字符串文字或注释,这些字符串看起来像函数:
- var s = "function notAFunction(){}";
- /*
- function alsoNotAFunction(){}
- */
或包含你的正则表达式会绊倒的部分功能:
- function f() {
- var s = "not a closing bracket: } ";
- }
那么,回答你的问题是什么正则表达式匹配JS中的函数:它不存在.您应该/可以使用适当的解析器.