关于正则表达式的相关理解

在我们工作中经常会遇到正则表达式的相关问题,这篇文章来详细来介绍正则表达式的相关用法,希望对你有所启发;

附上链接:

http://tool.oschina.net/uploads/apidocs/jquery/regexp.html

http://www.runoob.com/regexp/regexp-syntax.html

下面举一个例子,希望对你有所启发:

package test;

public class TestRegx {
	
	public static void main(String[] args) {
		String str="11111111111";
		boolean flag=isSjhm(str);
		System.out.println(flag);
	}

	public static boolean isSjhm(String str) {
		// TODO Auto-generated method stub
		String pattern="(\\+86|86)?[1][3,4,5,7,8][0-9]{9}$";
		/**
		 * 正则\\表示转义字符,+表示匹配前面的一次或多次,(\\+86|86)?含义是匹配86开头的0次或1 
         *  次,后面是1开头,第二个数字只能是3,4,5,7,8
		 * 第三位-最后一位是0-9范围的数字有9位,$表示结束位
		 * 
		 */
		return isRegexpCheck(str,pattern);
	}

	public static boolean isRegexpCheck(String str, String pattern) {
		// TODO Auto-generated method stub
		if(!isNotNull(str)){
			return true;
		}
		return str.matches(pattern);
	}

	public static boolean isNotNull(String str) {
		// TODO Auto-generated method stub
		if(str!=null && !"".equals(str))
			return true;
		return false;
	}

}

猜你喜欢

转载自blog.csdn.net/u012994320/article/details/83153035