User Access VerificationUsername: admin
Password: 
% Login invalidUsername: 
Username: 
Username: enable
Password: 
% Login invalidUsername: terminal no monitor
Password: 
% Login invalid0E8DB22F-DEF8-987E-1AFB-7BE8BBCC9BEAUser Access VerificationUsername: xiaotong
Password: 
r1>
r1>
r1>enable
Password: 
r1#terminal no monitor
r1#
r1#terminal length 0
r1#----
  我从数据库中取到如上数据。我现在要筛选其中的操作符,不要回响字符。
  这原文是有换行的,但是我用.replace("\r\n", "") 没有去掉换行效果。我该怎么做?
  
  还有我想筛选其他的一些 数据 我该怎么做? 没个思路。 希望大虾提供参考参考  
 以前没做过这方面的东西
   

解决方案 »

  1.   


    就比如Username: xiaotong
    Password:  
    r1>
    r1>
      以这些开头的 都要 !
      

  2.   

    不因该
    除非你调用完replace方法后, 没将返回值赋给某给字符串变量
      

  3.   

    Test.txt的测试数据库,就是粘贴你给的内容    public static void main(String[] args) throws IOException{
           BufferedReader br=new  BufferedReader(new FileReader("c:\\Test.txt"));
           int i=0;
           StringBuffer sb=new StringBuffer();
           while((i=br.read())!=-1){
               sb.append((char)i);
           }
           Matcher m=Pattern.compile("((Username|Password):|r1>).*").matcher(sb.toString());
           while(m.find()){
               System.out.println(m.group());
           }
        }
    不知道是不是这么个意思
      

  4.   


    可是我的数据 是直接从表中的一个字段中拿出来的。不是从text中取出来的
      

  5.   

      我现在就是 找不到换行符,  
      我用 这个测试一下:
     String lineSeparator = System.getProperty("line.separator");//根据不同系统获得相应的换行符
             然后Str.replace(lineSeparator, "");
      System.out.println(str);
    这样根本就找不到换行符。打印出来的 还是有换行的字符
      

  6.   

    非常感谢 已经解决了。 
    我用 .split("\r?\n|\n?\r");