正则表达式的威力4_小练习校验邮箱

import java.util.*;
class RegexTest1 
{
	public static void main(String[] args) 
	{
		//ipSort();
		checkMail();
	}

	/*
	将下列字符串转换成,我要学编程

	1,如果只想知道该字符串知否符合规则,用匹配
	2,如果想将已有的字符串变成另一个字符串,用替换
	3,想要按照自定义的方式将字符串变成多个,用切割,获取规则以外的字符串
	4,想要拿到符合要求的字符串子串,用获取,获取符合规则的子串
	*/

	public static void test()
	{
		String str="我我...我我我...要要要要....学学学学....编编编...程";

		/*
		替换,
		1,先将.去掉
		2,将多个重复内容变成单个
		*/
		str=str.replaceAll("\\.","");
		System.out.println(str);

		str=str.replaceAll("(.)\\1+","$1");
		System.out.println(str);
	}

	//对下面IP进行分割排序
	public static void ipSort()
	{
		String ip="192.168.1.254 102.49.23.103 2.2.2.2 8.12.168.201";

		ip=ip.replaceAll("(\\d+)","00$1");	//每段数字前加两个0
		System.out.println(ip);
		//00192.00168.001.00254 00102.0049.0023.00103 002.002.002.002 008.0012.00168.00201

		ip=ip.replaceAll("0*(\\d{3})","$1");	//保留三位
		System.out.println(ip);
		//192.168.001.254 102.049.023.103 002.002.002.002 008.012.168.201

		String[] arr=ip.split(" ");
		TreeSet<String> ts=new TreeSet<String>();	//用TreeSet进行排序

		for(String s:arr)
		{
			ts.add(s);
		}

		for (String s:ts)
		{
			//System.out.println(s);
		/*
		002.002.002.002
		008.012.168.201
		102.049.023.103
		192.168.001.254
		*/
			System.out.println(s.replaceAll("0*(\\d+)","$1"));//去掉前面的0
		}
	}

	/*
	对邮件地址进行校验
	*/
	public static void checkMail()
	{
		String mail="abc12@sina.com.cn.cn";

		String reg="[a-zA-Z0-9_]+@[a-zA-Z0-9]+(\\.[a-zA-Z]+){1,3}";

		String reg1="\\w+@\\w+(\\.\\w+)+";	//不太精确

		System.out.println(mail.matches(reg1));
	}
}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值