正则表达式

package test;

public class RegularExpressions {

    /**
     * 正则表达式
     */
    public static void main(String[] args) {
        
        String s1 = "^\\d+$";//非负整数(正整数 + 0)
        System.out.println("0".matches(s1)?"是一个非负整数":"不是一个非负整数");
        
        String s2 = "^[0-9]*[1-9][0-9]*$";//正整数
        System.out.println("68".matches(s2)?"是一个正整数":"不是一个正整数");
        
        String s3 = "^((-\\d+)|(0+))$";//非正整数(负整数 + 0)
        System.out.println("0".matches(s3)?"是一个非正整数":"不是一个非正整数");
        
        String s4 = "^-[0-9]*[1-9][0-9]*$";//负整数
        System.out.println("-3".matches(s4)?"是一个负整数":"不是一个负整数");
        
        String s5 = "^-?\\d+$";//整数
        System.out.println("0".matches(s5)?"是一个整数":"不是一个整数");
        
        String s6 = "^\\d+(.\\d+)?$";//非负浮点数(正浮点数 + 0)
        System.out.println("0.2".matches(s6)?"是一个非负浮点数":"不是一个非负浮点数");
        
        String s7 = "^(([0-9]+.[0-9]*[1-9][0-9]*)|([0-9]*[1-9][0-9]*.[0-9]+)|([0-9]*[1-9][0-9]*))$";//正浮点数
        System.out.println("0.2".matches(s7)?"是一个正浮点数":"不是一个正浮点数");
        
        String s8 = "^(-(([0-9]+.[0-9]*[1-9][0-9]*)|([0-9]*[1-9][0-9]*.[0-9]+)|([0-9]*[1-9][0-9]*)))$";//负浮点数
        System.out.println("-0.2".matches(s8)?"是一个负浮点数":"不是一个负浮点数");
        
    }

/**
* 检测邮箱地址是否合法
* @param email
* @return true合法 false不合法
*/
public static boolean isEmail(String email){
if (null==email || "".equals(email)) return false;
// Pattern p = Pattern.compile("\\w+@(\\w+.)+[a-z]{2,3}"); //简单匹配
Pattern p = Pattern.compile("\\w+([-+.]\\w+)*@\\w+([-.]\\w+)*\\.\\w+([-.]\\w+)*");//复杂匹配
Matcher m = p.matcher(email);
return m.matches();
}


}
原文地址:https://www.cnblogs.com/sandyflower/p/3628596.html