常用的正则表达式

做点笔记,以后备用!
package com.anthony.regex;
/**
 * 
 * @author Anthony_YWJ
 *
 */
public class Test {
	public static void main(String[] args){
		RegexSet rs = new RegexSet();
		rs.checkDate("1992-10-10");
		rs.checkStringFigure("AdABC090Aaaaa");
		rs.clearSpecialCharacter("@#$%^*^(*)#*@*HGOIGHIOHG");
		rs.clearSpecialCharacter02("@#$%^*^(*)#*@*HGOIGHIOHG");
		rs.splitString("anthony1|yewenjie2|3叶文杰");
		rs.splitString("AAB4445556JKLFLKSFLKEH5345");
		rs.getUrl("http://ww.baidu.com");
		rs.getUrl("//www.baidu.com");
		rs.checkMail("yewenjie20@vip.qq.com");
	}
}
package com.anthony.regex;

import java.util.regex.Matcher;
import java.util.regex.Pattern;

import org.omg.Dynamic.Parameter;
/**
 * 
 * @author Anthony_YWJ
 *
 */
public class RegexSet {
	/**
	 * 验证是否是数字
	 * X 必须出现一次
	 * X?可以出现0或1次
	 * X*可以出现0,多次
	 * X+可以出现1次或多次
	 * X{n}必须出现n次
	 * X{n,}必须出现n次以上
	 * X{n,m}必须出现n~m次
	 */
	public void checkFigure(String arg){
		if(Pattern.compile("[0-9]+").matcher(arg).matches()){
			System.out.println("由数字组成!");
		}else{
			System.out.println("出错了!");
		}
	}
	/**
	 * 验证是否是由字母组成
	 */
	public void checkString(String arg){
		if(Pattern.compile("^[a-zA-Z]+$").matcher(arg).matches()){
			System.out.println("由字母组成!");
		}else{
			System.out.println("出错了!");
		}
	}
	/**
	 * 验证是否由数字字母组成
	 * @param arg
	 */
	public void checkStringFigure(String arg){
		if(Pattern.compile("^[a-zA-Z0-9]{4}[^abc]+$").matcher(arg).matches()){
			System.out.println("字符串输入正确");
		}else{
			System.out.println("出错了!");
		}
	}
	/**
	 * 验证日期
	 * @param arg
	 */
	public void checkDate(String arg){
		if(Pattern.compile("^\\d{4}-\\d{2}-\\d{2}$").matcher(arg).matches()){
			System.out.println("日期输入正确!");
		}else{
			System.out.println("出错了!");
		}
	}
	/**
	 * 清除特殊字符
	 * @param arg
	 */
	public void clearSpecialCharacter(String arg){
		String regEx="[`~!@#$%^&*()+=|{}':;',\\[\\].<>/?~!@#¥%……& amp;*()——+|{}【】‘;:”“’。,、?]"; 
		Pattern p = Pattern.compile(regEx); 
		Matcher m = p.matcher(arg); 
		System.out.println(m.replaceAll("").trim()); 
	}
	public void clearSpecialCharacter02(String arg){
		String regEx="[`~!@#$%^&*()+=|{}':;',\\[\\].<>/?~!@#¥%……& amp;*()——+|{}【】‘;:”“’。,、?]"; 
		Pattern p = Pattern.compile(regEx); 
		String s[] = p.split(arg);
		for(int x=0;x<s.length;x++){
			System.out.print(s[x]);
		}
		System.out.println();
	}
	/**
	 * 拆分字符串
	 */
	public void splitString(String arg){
		String pat="[|]";
		Pattern p = Pattern.compile(pat);
		String s[] = p.split(arg);
		for(int x=0;x<s.length;x++){
			System.out.println(s[x]+"\t");
		}	
	}
	/**
	 * 截取URL
	 * @param arg
	 */
	public void getUrl(String arg){
		Pattern pattern = Pattern.compile("(http://|https://){1}[\\w\\.\\-/:]+");
		Matcher matcher = pattern.matcher(arg);
		StringBuffer buffer = new StringBuffer();
		while(matcher.find()){
			buffer.append(matcher.group()); 
			buffer.append("\r\n");
			System.out.println(buffer.toString());
		}
	}
	/**
	 * 验证邮箱
	 * @param arg
	 */
	public void checkMail(String arg){
		Pattern pattern = Pattern.compile("[\\w\\.\\-]+@([\\w\\-]+\\.)+[\\w\\-]+",Pattern.CASE_INSENSITIVE);
		Matcher matcher = pattern.matcher(arg);
		System.out.println(matcher.matches());
	}
	
}



 

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

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值