我想在给定代码中找到任何方法调用。我用分号作为分隔符来分割代码。最后,我有兴趣查找在给定代码中调用的方法的名称。
我需要一个正则表达式来匹配方法调用模式。
最佳答案
对于限定调用{即以这种形式调用:[objectName|className].methodName(..) },我一直在使用:
(\.[\s\n\r]*[\w]+)[\s\n\r]*(?=\(.*\))
当出现不合格的调用时{即以这种形式调用:methodName(..)},我一直在使用:
(?!\bif\b|\bfor\b|\bwhile\b|\bswitch\b|\btry\b|\bcatch\b)(\b[\w]+\b)[\s\n\r]*(?=\(.*\))
不过,这也会找到构造函数。
关于java - 正则表达式查找方法调用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9403570/