zoukankan      html  css  js  c++  java
  • Java String 中的一些函数与正则的结合使用

    首先正则表达式在处理字符串问题时,真的非常强大。

    正则可以帮助我们处理字符串的: 匹配, 选择, 编辑, 验证等问题。

    正则中"\"表示插入一个""

    这里仅是记录String 与 正则的结合:

    1:验证:

    import java.util.Arrays;
    import java.util.Scanner;
    
    
    public class Main {
    	public static void main(String[] args) {
    		// TODO Auto-generated method stub
    		Scanner cin = new Scanner(System.in);
    		
    		System.out.println("-1234".matches("-?\d+")); //可能以-开头以数字结尾的
    		System.out.println("5678".matches("-?\d+"));
    		System.out.println("+1234".matches("-?\d+"));
    		System.out.println("+2344".matches("(-|\+)?\d+"));//可能以-或者+开头以数字结尾的
    	}
    }
    输出:

    true
    true
    false
    true

      

    2:分割字符串:

    结合split进行分割:

    import java.util.Arrays;
    import java.util.Scanner;
    
    
    public class Main {
    	public static String s = "I   am a good student... haha";
    	
    	public static void main(String[] args) {
    		//以空格进行分割,返回一个list
    		System.out.println( Arrays.asList(s.split(" ")) );
    		//以非字符进行分割 W表示一个 W+表示后边跟任意个
    		System.out.println( Arrays.asList(s.split("\W+")));
    		//以以g开头后边跟字符的进行分割
    		System.out.println( Arrays.asList(s.split("g\w+")));
    	}
    }
    
    输出:
    [I, , , am, a, good, student..., haha]
    [I, am, a, good, student, haha]
    [I   am a ,  student... haha]
    

     

    4:替换:

    import java.util.Arrays;
    import java.util.Scanner;
    
    
    public class Main {
    	public static String s = "I   am a good student... haha good";
    	
    	public static void main(String[] args) {
    		 System.out.println(s.replaceFirst("g\w+", "very good"));
    		 System.out.println(s.replaceAll("g\w+", "very good"));
    	}
    }
    
    输出:
    I   am a very good student... haha good
    I   am a very good student... haha very good
    

      

    然后发现之前自己在oj上的一道简单的题目Java几行代码就解决了:

    SDUT 2192 http://acm.sdut.edu.cn/sdutoj/problem.php?action=showproblem&problemid=2192

    import java.util.Arrays;  
    import java.util.Scanner;  
      
      
    public class Main {  
      
        public static void main(String[] args) {  
            // TODO Auto-generated method stub  
            Scanner cin = new Scanner(System.in);  
            int n = cin.nextInt();  
            String s = null;  
            for (int i = 0; i < n; ++i) {  
                s = cin.next();  
                System.out.println(s.replaceAll("cRazY", "CrAZy").replaceAll("CraZy", "cRAzY"));  
            }  
        }  
      
    }  
       
    

      

  • 相关阅读:
    P1119 灾后重建
    P1824 进击的奶牛
    P3743 kotori的设备
    【MM配置】SAP MM模块配置目录(转)
    【SAP参数文件】SAP参数文件(转)
    【MM】供应商删除
    【Debug】修改数据库表数据的方法
    【MM 单位换算】物料基本单位换算
    EDI RFC IDOC
    【打印配置】SAP打印机配置
  • 原文地址:https://www.cnblogs.com/E-star/p/3432031.html
Copyright © 2011-2022 走看看