问题描述
有个文本文件123.txt内容如下:welcometoshanghai,thisiscsdn.welcometoshanghai,thisiscsdn.welcometoshanghai,thisiscsdn.thisismethod("ESGSM0134"),pleasecallit.welcometoshanghai,thisiscsdn.welcometoshanghai,thisiscsdn.welcometoshanghai,thisiscsdn.thisismethod("ESGSM0135"),pleasecallit.welcometoshanghai,thisiscsdn.welcometoshanghai,thisiscsdn.welcometoshanghai,thisiscsdn.thisismethod("ESGSM0136"),pleasecallit.welcometoshanghai,thisiscsdn.welcometoshanghai,thisiscsdn.welcometoshanghai,thisiscsdn.thisismethod("ESGSM0137"),pleasecallit.welcometoshanghai,thisiscsdn.welcometoshanghai,thisiscsdn.welcometoshanghai,thisiscsdn.thisismethod("ESGSM0138"),pleasecallit.welcometoshanghai,thisiscsdn.welcometoshanghai,thisiscsdn.welcometoshanghai,thisiscsdn.thisismethod("ESGSM0139"),pleasecallit.welcometoshanghai,thisiscsdn.welcometoshanghai,thisiscsdn.welcometoshanghai,thisiscsdn.thisismethod("ESGSM0133"),pleasecallit.请问怎样用java获得文本文件123.txt中ESGSM0134,ESGSM0135,ESGSM0136,ESGSM0137,ESGSM0138,ESGSM0139,ESGSM0133这些字符串.
解决方案
解决方案二:
按行读取文件,然后用正则匹配
解决方案三:
能给个实例么?谢谢
解决方案四:
观察下文件的规律,要匹配的字符串以thisismethod(" 开始,以引号结尾由于J2me不支持正则表达式,需要自己写代码来计算匹配位置Stringstr="welcometo....pleasecallit.";while(true){//查找匹配字符串起始位置intindex=str.indexOf("thisismethod("");if(index<0)break;//从匹配字符串开始位置截取str=str.substring(index+16);//查找匹配字符串结束位置index=str.indexOf(""");System.out.println(str.substring(0,index));str=str.substring(index+1);}
解决方案五:
关注
解决方案六:
ESGSM0134,ESGSM0135,ESGSM0136,ESGSM0137,ESGSM0138,ESGSM0139,ESGSM0133首把上面放到一个数组里面,再读取一行字符然后去比较
解决方案七:
恩,可以啊,楼主试试吧……
解决方案八:
BufferedReaderbr=newBufferedReader(newInputStreamReader(this.process.getInputStream()));Stringline="";inti=0;StringBuildersb=newStringBuilder();try{while((line=br.readLine())!=null){i++;handleResponse(line);//handleResponse(line,i);//System.out.println(line);sb.append(line+"rn");}br.close();
voidhandleResponse(Stringstr){if(str==null||str.equals(""))return;//handlethestrforexample:if(str.indexOf("this")>0{}//getthe"ESGSM0135",addittoadefinedstringArrayelsereturn;