• Java基础_正则表达


    做帐号判定的时候,如果挨个判断就有点麻烦 。

    单个字符判断

    		String string1 = "[abc]"; //中括号表示单个字符,不能匹配字符串
    		System.out.println("a".matches(string1)); //true
    		System.out.println("ab".matches(string1)); //false
    
    		String string2 = "[^abc]";//^是取反
    		System.out.println("a".matches(string2));//false
    		System.out.println("d".matches(string2));//true
    
    		String string3= "[a-zA-Z]";//a-Z 26*2个字符
    		System.out.println("a".matches(string3));//true
    		System.out.println("dc".matches(string3));//false
    
    		String string4= "[a-c[m-z]]";//a-Z 26*2个字符
    		System.out.println("a".matches(string4));//true
    		System.out.println("d".matches(string4));//false
    
    		String string5= "[a-z&&[def]]";//a-z 与 def的交集 ,即def
    		System.out.println("a".matches(string5));//false
    		System.out.println("d".matches(string5));//true
    		
    		String string6= "[a-z&&[^def]]";//a-z 与 def取反的交集 ,即除了def
    		System.out.println("a".matches(string6));//true
    		System.out.println("d".matches(string6));//false
    

    预定义字符判断

    		//.表示任意字符 ,一个点表示任意一个字符,两个点代表两个 。和[]区别,[]无论多少都是一个字符
    		String string1="..";
    		System.out.println("aa".matches(string1));//true
    		System.out.println("?".matches(string1));//false
    		
    		//  d表示0-9 的单个数字,但是是转义字符,所以需要两个
    		String string2="\d";
    		System.out.println("10".matches(string2));//false
    		System.out.println("3".matches(string2));//true
    
    		//  D表示除了0-9的单个字符
    		String string3="\D";
    		System.out.println("a".matches(string3));//true
    		System.out.println("3".matches(string3));//false
    		
    		//  s表示空白字符  	
    xOBf
    		String string4="\s";
    		System.out.println(" ".matches(string4));//true
    		System.out.println("3".matches(string4));//false
    		
    		//  S表示非空白字符  	
    xOBf
    		String string5="\S";
    		System.out.println(" ".matches(string5));//false
    		System.out.println("3".matches(string5));//true
    		
    		//  w表示[a-zA-Z0-9]		.大写W就不演示了
    		String string6="\S";
    		System.out.println(" ".matches(string6));//false
    		System.out.println("3".matches(string6));//true
    

    数量次数判断

    		//?代表一次或者一次也没有,与[]连用就是abc针对单个字符一个或者一个都不出现
    		String string1="[abc]?";
    		System.out.println("a".matches(string1));//true
    		System.out.println("".matches(string1));//true
    		System.out.println(" ".matches(string1));//false	
    		
    		//*代表0次到多次出现	,这里可以对字符串进行判断
    		String string2="[abc]*";
    		System.out.println("aaaaa".matches(string2));//true 
    		System.out.println("".matches(string2));//true
    		System.out.println("abcd".matches(string2));//false
    		System.out.println("abc".matches(string2));//true
    		
    		//+代表1次到多次出现,可以对字符串判断
    		String string3="[abc]+";
    		System.out.println("aaaaa".matches(string3));//true
    		System.out.println("".matches(string3));//false
    		System.out.println("abcd".matches(string3));//false
    		System.out.println("abc".matches(string3));//true		
    		
    		//{n}代表恰好N次 , 还有{n,m} ,至少n次不超过m次,还有{n,} ,至少n次
    		String string4="[abc]{3}";
    		System.out.println("abc".matches(string4));//true
    		System.out.println("a".matches(string4));//false
    		System.out.println("abcd".matches(string4));//false
    

    字符串切割

    		
    		String string = "abcd" ;
    		String regex ="";//拿空格去切割字符串,生成数组
    		String[] arr =string.split(regex);
    		for(int i=0;i<string.length();i++){
    			System.out.println(arr[i]);
    		} // a b c d 
    
  • 相关阅读:
    C#小型资源管理器
    C#换肤LrisSkin
    面向对象的24种设计模式
    七大设计原则
    非泛型集合和泛型集合
    C#经理评价系统
    深入C#.NET框架
    C#窗口航空总结
    java基础数据结构和语法
    HTML
  • 原文地址:https://www.cnblogs.com/lyxin/p/6013234.html
Copyright © 2020-2023  润新知