常用正则表达式模板

package Ashier.javaclass;

import jdk.nashorn.internal.runtime.regexp.joni.Regex;

import java.text.ParseException;
import java.text.SimpleDateFormat;

/**
 * Demo class
 *
 * @author shier
 * @date 2021/3/27
 */
public class My_Regex {
    public static void main(String[] arg) throws ParseException {
        //将str中的非字母替换为""去掉
        String str = "^jadj*djsakldj(&^ksjfalfjnv(*^&jxkzchkj&^*";
        String regex = "[^a-zA-Z]";
        System.out.println(str.replaceAll(regex, ""));

        //将字母中间的相同的数字去掉
        String str2 = "a11b22c4444d555";
        String regex2 = "\\d+";
        String result[] = str2.split(regex2);
        for (String s : result) {
            System.out.println(s);
        }

        //验证一个字符串是否是数字,如果是转换为double
        String str3 = "23.434";
        String regex3 = "\\d+(\\.\\d+)?";//小数为可能出现或不出现
        if(str3.matches(regex3)){
            double data = Double.parseDouble(str3);
            System.out.println(data);
        }

        //验证一个字符串是否是时间,是将其转换为Data
        //String str4 = "2021-03-27";
        String str4 = "2021-03-27 22:16:23";
        if(str4.matches("\\d{4}-\\d{2}-\\d{2}")){
            System.out.println(new SimpleDateFormat("yyyy-MM-dd").parse(str4));
        }else if (str4.matches("\\d{4}-\\d{2}-\\d{2} \\d{2}:\\d{2}:\\d{2}")){
            System.out.println(new SimpleDateFormat("yyyy-MM-dd hh:mm:ss").parse(str4));
        }

        //用一个正则判断电话号码格式是否正确
        //格式一:1234567  "\\d{7,8}"  电话7到8位
        //格式二:0101234567  "(\\d{3,4})?\\d{7,8}"  区号3到4位
        //格式三:(010)-1234567  "((\\d{3,4})?|(\\(\\d{3,4}\\)-)?)\\d{7,8}"
        String str5 = "(010)-1234567";
        String regex5 = "((\\d{3,4})?|(\\(\\d{3,4}\\)-)?)\\d{7,8}";
        System.out.println(str5.matches(regex5));


        //判断Email格式
        //要求必须由字母开头, [a-zA-Z]
        // 组成可以是字母、数字、_、-、. 所组成,用户名长度必须在6到15位之间,[a-zA-Z-_\\.0-9]{6,15}
        //@   @
        // 组成可以是字母、数字、_、-、. 所组成,用户名长度必须在6到15位之间,[a-zA-Z-_\\.0-9]{6,15}
        //.    \\.
        // 后缀名必须是.com或.nt或.cn    (com|nt|cn)
        String str6 = "s123js-d.s@clkx-_.cn";
        String regex6 = "[a-zA-Z][a-zA-Z-_\\\\.0-9]{6,15}@[a-zA-Z-_\\\\.0-9]{6,15}\\.(com|nt|cn)";
        System.out.println(str6.matches(regex6));



    }
}

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值