下面有几个,,高手帮我解释一下咯..万分感谢.
1. @"/\*.*?\*/|//.*?(?=\r|\n)"2. @"@?""""|@?"".*?(?!\\).""|''|'.*?(?!\\).'"3. @"\w+|-\w+|#\w+|@@\w+|#(?:\\(?:s|w)(?:\*|\+)?\w+)+|@\\w\*+"4. @"(?<=^|\s)$0(?=\s|$)"5. "(?!.*)_{37}(?<!.*)"
1. @"/\*.*?\*/|//.*?(?=\r|\n)"2. @"@?""""|@?"".*?(?!\\).""|''|'.*?(?!\\).'"3. @"\w+|-\w+|#\w+|@@\w+|#(?:\\(?:s|w)(?:\*|\+)?\w+)+|@\\w\*+"4. @"(?<=^|\s)$0(?=\s|$)"5. "(?!.*)_{37}(?<!.*)"
@"/\*.*?\*/|//.*?(?=\r|\n)" 它是查找字符串中是否有注释内容
比如下面的内容:
/*sdfsdfsdf*/ (/\*.*?\*/)
或者是
//sdfsdfsdfsfd
(?=\r|\n)表示匹配\r或者\n前面的字符@免去了转义
匹配多行注释和单行注释,但是有问题,我不会 .net 只能帮你写 Java 的/**
* 多行注释
*/
private final static String MULTI_COMMENT = "/\\*[^*]*\\*+(?:[^/*][^*]*\\*+)*/";
/**
* 单行注释
*/
private final static String SINGLE_COMMENT = "//[^\\r\\n]*+";
2. @"@?""""|@?"".*?(?!\\).""|''|'.*?(?!\\).'"
匹配双引号的字符串和单引号的字符,但是好像也有问题,比如说遇到:String str = "test \\\\\" tesst";的字符串就不能正确匹配了。更正后:/**
* 字符串
*/
private final static String QUOTE_STRING = "\"[^\\\\\"]*(?:\\\\.[^\\\\\"]*)*\"";
/**
* 字符
*/
private final static String QUOTE_CHAR = "'[^\\\\']*(?:\\\\.[^\\\\']*)*'"3. @"\w+|-\w+|#\w+|@@\w+|#(?:\\(?:s|w)(?:\*|\+)?\w+)+|@\\w\*+"
这个应该是匹配正则表达式的正则表达式4. @"(?<=^|\s)$0(?=\s|$)"
没看懂5. "(?!.*)_{37}(?<!.*)"
没看懂