java字符串处理类_java常见的字符串处理工具类

package com.string;

import java.util.regex.Pattern;

/**

* @author zx

*

* @since 2013-10-28

*/

public class StringUtil {

/**

* 判断字符串是否为整数

*

* @param str

* 传入字符串

* @return 是整数返回true,否则返回false

*/

public static boolean isInteger(String str) {

if (isBlank(str))

return false;

Pattern pattern = Pattern.compile("^[-\\+]?[1-9][\\d]*$");

return pattern.matcher(str).matches();

}

/**

* 判断是否为浮点数,包括double和float

*

* @param str

* 传入字符串

* @return 是浮点数返回true,否则返回false

*/

public static boolean isDouble(String str) {

if (isBlank(str))

return false;

Pattern pattern = Pattern.compile("^[-\\+]?[1-9][\\d]*[.]?[\\d]+$");

return pattern.matcher(str).matches();

}

/**

* 判断输入的字符串是否符合Email样式.

*

* @param str

* 传入字符串

* @return 是Email样式返回true,否则返回false

*/

public static boolean isEmail(String str) {

if (isBlank(str))

return false;

Pattern pattern = Pattern

.compile("^\\w+([-+.]\\w+)*@\\w+([-.]\\w+)*\\.\\w+([-.]\\w+)*$");

return pattern.matcher(str).matches();

}

/**

* 判断输入的字符串是否为纯汉字,不是包含汉子或者其他字符

*

* @param str

* 传入字符串

* @return 如果是汉字返回true,否则返回false

*/

public static boolean isChinese(String str) {

if (isBlank(str))

return false;

Pattern pattern = Pattern.compile("[\u0391-\uFFE5]+$");

return pattern.matcher(str).matches();

}

/**

* 判断是否为空,包括null和"",其中" "无论有多少空格都返回true,表示为空

*

* @param str

* 传入字符串

* @return 为空返回true,否则返回false

*/

public static boolean isBlank(String str) {

return str == null || str.trim().length() == 0;

}

}

2

2

分享到:

18e900b8666ce6f233d25ec02f95ee59.png

72dd548719f0ace4d5f9bca64e1d7715.png

2014-01-28 10:45

浏览 1894

评论

3 楼

zx_code

2014-02-10

kidneyball 写道

据目测,0.5貌似过不了这里的isDouble测试呀。为什么不允许数字0打头呢,007也算是个整数吧。如果是特殊需求,应该把这个特性写到javadoc里。

嗯,有待修改。

2 楼

kidneyball

2014-01-30

另外,判断字符串为空,推荐使用isEmpty()方法,更为直观。而不是length() == 0

1 楼

kidneyball

2014-01-30

据目测,0.5貌似过不了这里的isDouble测试呀。为什么不允许数字0打头呢,007也算是个整数吧。如果是特殊需求,应该把这个特性写到javadoc里。

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值