正则表达式练习

/* 
* 程序头部注释开始   
* 程序的版权和版本声明部分   
* Copyright (c) 2011, 烟台大学计算机学院学生   
* All rights reserved.   
* 文件名称:正则表达式练习                       
* 作    者:薛广晨                               
* 完成日期:2012  年 11 月  17  日   
* 版 本号:x1.0            
   
* 对任务及求解方法的描述部分   
* 输入描述:  
* 问题描述: 		
* 程序输出:   
* 程序头部的注释结束 
*/
import java.util.*;
class RegexTest 
{
	public static void main(String[] args) 
	{
		//test_1();
		//ipSort();
		checkMail();
	}

	//需求:
	//将下列字符串转成:我要学编程.
	public static void test_1()
	{
		String str = "我我...我我...我要..要要...要要...学学学....学学...编编编...编程..程.程程...程...程";
		str = str.replaceAll("\\.+", "");
		///System.out.println(str);
		str = str.replaceAll("(.)\\1+", "$1");
		System.out.println(str);
	}

	//192.68.1.254 102.49.23.013 10.10.10.10 2.2.2.2 8.109.90.30
	//将ip地址进行地址段顺序的排序。
	public static void ipSort()
	{
		String ip = "192.68.1.254 102.49.23.013 10.10.10.10 2.2.2.2 8.109.90.30";
		ip = ip.replaceAll("(\\d+)", "00$1");
		//System.out.println(ip);
		ip = ip.replaceAll("0*(\\d{3})", "$1");
		System.out.println(ip);

		String[] arr = ip.split(" +");
		TreeSet<String> ts = new TreeSet<String>();

		for(String str : arr)
		{
			ts.add(str);
		}
		for(String str : ts)
		{
			System.out.println(str.replaceAll("0*(\\d+)", "$1"));
		}
	}

	//需求:对邮件地址进行校验。
	public static void checkMail()
	{
		String mail = "abc12@sina.com";
		String reg = "[a-zA-Z0-9_]+@[a-zA-Z0-9]+(\\.[a-zA-Z]+)+";//较为精确的匹配。
		reg = "\\w+@\\w+(\\.\\w+)+";//相对不太精确的匹配。
		System.out.println(mail.matches(reg));
	}
}

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值