欢迎来到天天文库
浏览记录
ID:57187718
大小:44.00 KB
页数:7页
时间:2020-08-05
《编译原理-词法分析实验报告-java版.doc》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、词法分析代码。importjava.io.*;importjava.util.Vector;importjava.util.regex.*;publicclassCompiler{publicstaticStringstringCompiler="";privatestaticfinalString[]KEY_WORD={"if","then","while","do","read","write","call","begin","end","const","var","procedure","odd"};privatestaticbooleani
2、sKeyWord(Strings)//是否是关键字{booleanb=false;for(inti=0;isheet
3、=newVector(8);Fileresult=newFile("result.txt");Fileresult1=newFile("result1.txt");booleanwork(){System.out.println("输入PL/O语言为:");try{FileWriterfw1=newFileWriter(result1);BufferedWriterbw1=newBufferedWriter(fw1);FileReaderfr1=newFileReader("input.txt");BufferedReaderbr
4、1=newBufferedReader(fr1);Strings=br1.readLine();label1:while(s!=null){for(inti=0;i5、);s=br1.readLine();continuelabel1;}elseif(s.indexOf("/*")!=-1)//'/'符和'*'符{s=s.substring(0,s.indexOf("/*"));s.replaceAll("t","");s.replaceAll("","");s.toLowerCase();bw1.write(s.substring(0,i));System.out.println(s);s=s.substring(i,s.length());while(s!=null){if(s.indexOf("*/"6、)!=-1){s=s.substring(s.lastIndexOf("*/"),s.length());s=s.replaceAll("t","");s=s.replaceAll("","");s=s.toLowerCase();bw1.write(s);System.out.println(s);bw1.newLine();s=br1.readLine();continuelabel1;}else{s=br1.readLine();}}}else{s=s.replaceAll("t","");s=s.replaceAll("",""7、);s=s.toLowerCase();bw1.write(s);System.out.println(s);bw1.newLine();s=br1.readLine();continuelabel1;}}}br1.close();bw1.close();returntrue;}catch(IOExceptione){e.printStackTrace();returnfalse;}finally{}}voidanalyser(){try{BufferedReaderbr=newBufferedReader(newFileReader(result8、1));BufferedWriterbw=newBufferedWriter(newFileWriter(result))
5、);s=br1.readLine();continuelabel1;}elseif(s.indexOf("/*")!=-1)//'/'符和'*'符{s=s.substring(0,s.indexOf("/*"));s.replaceAll("t","");s.replaceAll("","");s.toLowerCase();bw1.write(s.substring(0,i));System.out.println(s);s=s.substring(i,s.length());while(s!=null){if(s.indexOf("*/"
6、)!=-1){s=s.substring(s.lastIndexOf("*/"),s.length());s=s.replaceAll("t","");s=s.replaceAll("","");s=s.toLowerCase();bw1.write(s);System.out.println(s);bw1.newLine();s=br1.readLine();continuelabel1;}else{s=br1.readLine();}}}else{s=s.replaceAll("t","");s=s.replaceAll("",""
7、);s=s.toLowerCase();bw1.write(s);System.out.println(s);bw1.newLine();s=br1.readLine();continuelabel1;}}}br1.close();bw1.close();returntrue;}catch(IOExceptione){e.printStackTrace();returnfalse;}finally{}}voidanalyser(){try{BufferedReaderbr=newBufferedReader(newFileReader(result
8、1));BufferedWriterbw=newBufferedWriter(newFileWriter(result))
此文档下载收益归作者所有