java的类头和method头的正则表达式如何写? 有没有大虾尝试写一两个example,好让我们参考一下,融会贯通。 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 import java.util.regex.*;public class pattern{ public static void main(String[] args) throws Exception { Pattern p=Pattern.compile("(public|private|protect){0,1}\\s{0,1}(class|void)\\s[a-zA-Z0-9_\\-]{1,}"); Matcher m=p.matcher("public class myclass{ ...; } public void mymethod{ ...; }"); StringBuffer sbs=new StringBuffer(); boolean result=m.find(); while(result){ System.out.println(m.group()); result=m.find(); } }}试下,我没有严格测试过,只是写了个字符串来解析。 更改了一下import java.util.regex.*;public class pattern{ public static void main(String[] args) throws Exception { Pattern p=Pattern.compile("(public|private|protect){0,1}\\s{0,1}(class|void)\\s[ a-zA-Z0-9(_)\\-]{1,}"); Matcher m=p.matcher("public class myclass{ ...; } public void mymethod(String a){ ...; }"); StringBuffer sbs=new StringBuffer(); boolean result=m.find(); while(result){ System.out.println(m.group()); result=m.find(); } }} import java.util.regex.*;public class pattern{ public static void main(String[] args) throws Exception { Pattern p=Pattern.compile("(public|private|protected){0,1}\\s{0,1}(class|void)\\s[ a-zA-Z0-9(_)\\-]{1,}"); Matcher m=p.matcher("public class myclass extends jj{ ...; } public void mymethod(String a){ ...; }"); boolean result=m.find(); while(result){ System.out.println(m.group()); result=m.find(); } }}就这样先,自己修改下,下班了。。 谢谢了,可否顺便帮忙写个判断条件头的正则表达式,例如if,do...while,while,switch等等。给一个例子让我举一反三吧,谢谢,我对正则表达式是最头痛的了。写完后一定再另外加分。谢谢! 取类与方法头:import java.util.regex.*;public class pattern{ public static void main(String[] args) throws Exception { Pattern p=Pattern.compile("(public|private|protected){0,1}\\s{0,1}(class|void)\\s[ a-zA-Z0-9(_)\\-]{1,}"); Matcher m=p.matcher("public class myclass extends jj{ ...; } public void mymethod(String a){ ...; }"); boolean result=m.find(); while(result){ System.out.println(m.group()); result=m.find(); } }}取条件语句:import java.util.regex.*;public class pattern{ public static void main(String[] args) throws Exception { Pattern p=Pattern.compile("(if|do|while|switch){1}[ ]{0,}[(_\\-)a-zA-Z0-9=\\%\\*\\&\\& ]{1,}"); Matcher m=p.matcher("if( a==b ){ ...; } while( a== b ){ ...; }do( a%b=4 ){ ...; } "); boolean result=m.find(); while(result){ System.out.println(m.group()); result=m.find(); } }} 取类与方法头:import java.util.regex.*;public class pattern{ public static void main(String[] args) throws Exception { Pattern p=Pattern.compile("(public|private|protected){0,1}\\s{0,1}(class|void)\\s[ a-zA-Z0-9(_)\\-]{1,}"); Matcher m=p.matcher("public class myclass extends jj{ ...; } public void mymethod(String a){ ...; }"); boolean result=m.find(); while(result){ System.out.println(m.group()); result=m.find(); } }}取条件语句:import java.util.regex.*;public class pattern{ public static void main(String[] args) throws Exception { Pattern p=Pattern.compile("(if|do[ ]{0,}\\{|while|switch){1}[ ]{0,}[(_\\-)a-zA-Z0-9=\\%\\*\\&\\& ]{1,}"); Matcher m=p.matcher("if( a==b ){ ...; } while( a== b ){ ...; }do { ...; }while( a%b=4 ); "); boolean result=m.find(); while(result){ if( m.group().startsWith("do") ){ System.out.print(m.group().replaceAll("\\{","")); } else{ System.out.println(m.group()); } result=m.find(); } }} Java Swing里怎样给界面设置一致的字体 新手报道,小小菜鸟向各位前辈问好 急求:java打字练习程序(十万火急!) 请问一下他说的对吗? 一有 package 就运行错误!求救啊,我想了一个下午了…… 求求求!!动态控件数组的摆放问题!!!求求 這個異常為什麼這麼觸發呀, 怎麼寫到方法的後面?? DataInputStream的问题! 关于对象在内存中的实现和序列化问题 高分送高手 oracle中如何用PL/SQL打开一个指定的库,并在屏幕上列出库中的所有表? 谁帮我把下面的c++代码翻译成J2SE?酬谢!!!! 如何编写java程序统计java代码包含多少类、多少方法,多少逻辑行
public class pattern
{
public static void main(String[] args) throws Exception
{ Pattern p=Pattern.compile("(public|private|protect){0,1}\\s{0,1}(class|void)\\s[a-zA-Z0-9_\\-]{1,}");
Matcher m=p.matcher("public class myclass{ ...; } public void mymethod{ ...; }");
StringBuffer sbs=new StringBuffer();
boolean result=m.find();
while(result){
System.out.println(m.group());
result=m.find();
}
}}试下,我没有严格测试过,只是写了个字符串来解析。
public class pattern
{
public static void main(String[] args) throws Exception
{ Pattern p=Pattern.compile("(public|private|protect){0,1}\\s{0,1}(class|void)\\s[ a-zA-Z0-9(_)\\-]{1,}");
Matcher m=p.matcher("public class myclass{ ...; } public void mymethod(String a){ ...; }");
StringBuffer sbs=new StringBuffer();
boolean result=m.find();
while(result){
System.out.println(m.group());
result=m.find();
}
}}
public class pattern
{
public static void main(String[] args) throws Exception
{ Pattern p=Pattern.compile("(public|private|protected){0,1}\\s{0,1}(class|void)\\s[ a-zA-Z0-9(_)\\-]{1,}");
Matcher m=p.matcher("public class myclass extends jj{ ...; } public void mymethod(String a){ ...; }");
boolean result=m.find();
while(result){
System.out.println(m.group());
result=m.find();
}
}}就这样先,自己修改下,下班了。。
import java.util.regex.*;
public class pattern
{
public static void main(String[] args) throws Exception
{ Pattern p=Pattern.compile("(public|private|protected){0,1}\\s{0,1}(class|void)\\s[ a-zA-Z0-9(_)\\-]{1,}");
Matcher m=p.matcher("public class myclass extends jj{ ...; } public void mymethod(String a){ ...; }");
boolean result=m.find();
while(result){
System.out.println(m.group());
result=m.find();
}
}}取条件语句:
import java.util.regex.*;
public class pattern
{
public static void main(String[] args) throws Exception
{
Pattern p=Pattern.compile("(if|do|while|switch){1}[ ]{0,}[(_\\-)a-zA-Z0-9=\\%\\*\\&\\& ]{1,}");
Matcher m=p.matcher("if( a==b ){ ...; } while( a== b ){ ...; }do( a%b=4 ){ ...; } ");
boolean result=m.find();
while(result){
System.out.println(m.group());
result=m.find();
} }}
import java.util.regex.*;
public class pattern
{
public static void main(String[] args) throws Exception
{ Pattern p=Pattern.compile("(public|private|protected){0,1}\\s{0,1}(class|void)\\s[ a-zA-Z0-9(_)\\-]{1,}");
Matcher m=p.matcher("public class myclass extends jj{ ...; } public void mymethod(String a){ ...; }");
boolean result=m.find();
while(result){
System.out.println(m.group());
result=m.find();
}
}}取条件语句:
import java.util.regex.*;
public class pattern
{
public static void main(String[] args) throws Exception
{
Pattern p=Pattern.compile("(if|do[ ]{0,}\\{|while|switch){1}[ ]{0,}[(_\\-)a-zA-Z0-9=\\%\\*\\&\\& ]{1,}");
Matcher m=p.matcher("if( a==b ){ ...; } while( a== b ){ ...; }do { ...; }while( a%b=4 ); ");
boolean result=m.find();
while(result){
if( m.group().startsWith("do") ){
System.out.print(m.group().replaceAll("\\{",""));
}
else{
System.out.println(m.group());
}
result=m.find();
} }}