Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/361.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java解析源中的类名_Java_Class_Parsing - Fatal编程技术网

Java解析源中的类名

Java解析源中的类名,java,class,parsing,Java,Class,Parsing,我正在尝试分析类名: public class Script { } 我现在正在使用正则表达式,但它没有我想象的那么好,我的正则表达式 class\s+(.*?)\W 但是,当扩展和实现之类的东西出现时,它就崩溃了 我正在制作一个脚本,从pastebin下载源代码并自动保存 谢谢。这可以做到: 除空格或括号外的所有字符的符号 class\s+([^\s{]+)\s*尝试使用class\s+(\w*)\s* 这还可以处理类Classname{在类名称后不带空格的情况尝试对名称可以包含的字符

我正在尝试分析类名:

public class Script {


}
我现在正在使用正则表达式,但它没有我想象的那么好,我的正则表达式

class\s+(.*?)\W
但是,当扩展和实现之类的东西出现时,它就崩溃了

我正在制作一个脚本,从pastebin下载源代码并自动保存


谢谢。

这可以做到:

除空格或括号外的所有字符的符号
class\s+([^\s{]+)\s*

尝试使用
class\s+(\w*)\s*


这还可以处理
类Classname{
在类名称后不带空格的情况

尝试对名称可以包含的字符更严格。例如,它不能包含任何空格字符。反射是否仅适用于已编译的文件?class\s+([^\s]+)\s的问题是,它将返回“Classname”{'因此,如果类名和{'-示例:'class ClassName{'之间缺少一个空格,那么您是对的,我更新了regexp以在有空格或“{”时停止