LeetCode008:Valid Number(正则表达式的运用)

前端之家收集整理的这篇文章主要介绍了LeetCode008:Valid Number(正则表达式的运用)前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
package com.abuge;

import org.junit.Test;

public class Solution 
{
	public boolean isNumber(String s)
	{
		
		String str = s.trim();
		if(str.isEmpty())
		{
			return false;
		}
		//正则表达式的运用:
		/*第一位:+-(一次或者一次也没有)
		 * 第二位开始:可以使若干数字加一个点或者一个点加若干数字(数字出现一次或多次)
		 * \d:表示[0-9],而+表示一个或多个
		 * ?:一次或一次也没有
		 * 指数部分:出现一次或者不出现
		 */
		String regex = "[+-]?(\\d+\\.?|\\.\\d+)\\d*(e[+-]?\\d+)?";
		
		if(str.matches(regex))
		{
			return true;
		}else
		{
			return false;
		}
		
		
	}
	@Test
	public void test()
	{
		System.out.println(isNumber("0"));
		System.out.println(isNumber(" 0.1 "));
		System.out.println(isNumber("abc"));
		System.out.println(isNumber("1 a"));
		System.out.println(isNumber("2e10"));
		System.out.println(isNumber(".1"));
		System.out.println(isNumber("3."));
		System.out.println(isNumber("."));
		System.out.println(isNumber(".."));
		System.out.println(isNumber("-1."));
		System.out.println(isNumber("+.8"));
		System.out.println(isNumber("-."));
		System.out.println(isNumber(".e1"));
		System.out.println(isNumber("1e."));
		System.out.println(isNumber("2e0"));
		System.out.println(isNumber("46.e3"));
		System.out.println(isNumber("-e58"));
		System.out.println(isNumber("005047e+6"));
		System.out.println(isNumber("6+1"));
		System.out.println(isNumber("+53"));
		
	}
}
原文链接:https://www.f2er.com/regex/361423.html

猜你在找的正则表达式相关文章