正则表达式

package day_34_正则表达式;

import java.util.Arrays;

/**
 * 正则表达式:就是一个模式串,常用于判断字符串是否匹配指定的模式
 * matches()
 *
 * [abcdefg]            匹配[]中的一个
 *   .                  任意字符
 * \d                   数字字符
 * \s                   空白字符
 * \w                   单词字符[a-zA-Z0-9_]
 * X?                   0次或1次
 * X*                   任意次
 * X+                   至少一次
 * X{n}                 正好n次
 * X{n,}                至少n次
 * X{n,m}               至少n次,至多m次
 *
 */
public class Test {
    public static void main(String[] args) {
        String email="1391707422@qq.com";
        //  1):判断字符串是否是邮箱格式
        System.out.println("1):");
        String pattern="\\w{6,}@\\w{2,}\\.(com|cn|net)";    //定义匹配的格式串
        System.out.println(email.matches(pattern));

        //  2)判断用户密码中必须包含字母和数字,并且要求6位以上
        System.out.println("2):");
        String passward="123456yq";
        String str="(?![0-9]+$)(?![a-zA-Z]+4)\\w{6,}";      //***定义匹配的格式串
        System.out.println(passward.matches(str));

        //  3)将字符串中指定字符替换   (和谐指定字符)
        System.out.println("3):");
        String text="hello! 1234 宿州学院!";
        text=text.replaceAll("[宿州学院\\d]","*");
        System.out.println(text);

        //  4)split()字符串分割
        System.out.println("4):");
        text="Good Good Study;Day Day Up!";
        String []words;
        words=text.split("[\\s,;!]");
        for (String s:words                //for(each)遍历数组
             ) {
            System.out.println(s);
        }
    }
}

  

posted @ 2019-08-12 16:51  石乐智先生  阅读(196)  评论(0编辑  收藏  举报