package com.omg.web.util;
import java.beans.PropertyDescriptor;
import java.text.DecimalFormat;
import java.util.ArrayList;
import java.util.List;
import java.util.Random;
import java.util.regex.Matcher;
import java.util.regex.Pattern;
import org.apache.commons.lang.StringUtils;
public class StringUtil {
// 数字正则
private static final Pattern RE_NUMBER = Pattern.compile("[0-9]+");
// 字符正则
private static final Pattern RE_CHARACTER = Pattern.compile("\\w+");
private static final Pattern Html_TAG = Pattern.compile("<style.*?</style>|<script.*?</script>|<([^>]*)>");
// 千分位显示
private static final DecimalFormat THOUSANDS_TAG = new DecimalFormat("#,###");
public static String join(String[] strs, String s) {
if (null == strs)
return "";
StringBuilder sb = new StringBuilder();
for (int i = 0; i < strs.length; i++) {
sb.append(strs[i]);
if (i != strs.length - 1)
sb.append(s);
}
return sb.toString();
}
public static String[] split(String str, char separatorChar) {
return StringUtils.split(str, separatorChar);
}
public static List<String> splitToList(String str, char separatorChar) {//
if (StringUtil.isBlank(str)) {
return null;
}
List<String> list = new ArrayList<String>();
for (String s : StringUtil.split(str, separatorChar)) {
list.add(s);
}
return list;
}
public static boolean isBlank(String str) {
if (null == str)
return true;
if ("".equals(str.replaceAll(" "," ").trim()))
return true;
return false;
}
public static String toRandom(int j) {
StringBuilder s = new StringBuilder();
for (int i = 0; i < j; i++) {
Random r = new Random();
int n = r.nextInt(3);
if (n == 0) {
s.append(r.nextInt(9));
} else if (n == 1) {
s.append((char) ('a' + Math.random() * 26));
} else {
s.append((char) ('A' + Math.random() * 26));
}
}
return s.toString();
}
private static char[] numbersAndLetters = ("0123456789abcdefghijklmnopqrstuvwxyz" +
"0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ").toCharArray();
public static String randomString(int length) {
if (length < 1) {
return null;
}
// Create a char buffer to put random letters and numbers in.
char[] randBuffer = new char[length];
for (int i = 0; i < randBuffer.length; i++) {
randBuffer[i] = numbersAndLetters[new Random().nextInt(71)];
}
return new String(randBuffer);
}
public static boolean isMailAddr(String mailAddr) {
String check = "^[_A-Za-z0-9-]+(\\.[_A-Za-z0-9-]+)*@[A-Za-z0-9]+(\\.[A-Za-z0-9-]+)*(\\.[A-Za-z]{2,})$";
Pattern regex = Pattern.compile(check);
Matcher matcher = regex.matcher(mailAddr);
return matcher.matches();
}
public static boolean isNumber(String str) {
return (str != null) && RE_NUMBER.matcher(str).matches();
}
public static String getListToString(List<String> list, char separatorChar) {
if (null != list && list.size() > 0) {
StringBuilder sb = new StringBuilder();
for (int i = 0; i < list.size(); i++) {
sb.append(list.get(i));
if (i != list.size() -1) {
sb.append(separatorChar);
}
}
return sb.toString();
}
return null;
}
/**
* 取出html里所有标签和<scritp><style>内容
*
* @param html html内容
* @param replace 替换内容
* @return
*/
public static String getHtmlToText(String html, String replace) {
Matcher m = Html_TAG.matcher(html);
return m.replaceAll(replace);
}
/**
* 判断是否只字符
*
* @param s
* @return
*/
public static boolean regularCharacter(String s) {
return RE_CHARACTER.matcher(s).matches();
}
/**
* 解析bean对象属性
*
* @param p
* @return
*/
public static String getDisplayName(PropertyDescriptor p) {
if (null != p && null != p.getReadMethod()) {
if (p.getPropertyType() == boolean.class) {
return p.getReadMethod().getName().substring(2);
}
return p.getReadMethod().getName().substring(3);
}
return "";
}
/**
* 获取千分位
*
* @param s
* @return ##,###.00
*/
public static String getThousands(String s) {
try {
return THOUSANDS_TAG.format(Double.valueOf(s));
} catch (Exception e) {
return "";
}
}
public static void main(String[] args) {
System.out.println(StringUtil.getThousands("2500000.000"));
}
}
import java.beans.PropertyDescriptor;
import java.text.DecimalFormat;
import java.util.ArrayList;
import java.util.List;
import java.util.Random;
import java.util.regex.Matcher;
import java.util.regex.Pattern;
import org.apache.commons.lang.StringUtils;
public class StringUtil {
// 数字正则
private static final Pattern RE_NUMBER = Pattern.compile("[0-9]+");
// 字符正则
private static final Pattern RE_CHARACTER = Pattern.compile("\\w+");
private static final Pattern Html_TAG = Pattern.compile("<style.*?</style>|<script.*?</script>|<([^>]*)>");
// 千分位显示
private static final DecimalFormat THOUSANDS_TAG = new DecimalFormat("#,###");
public static String join(String[] strs, String s) {
if (null == strs)
return "";
StringBuilder sb = new StringBuilder();
for (int i = 0; i < strs.length; i++) {
sb.append(strs[i]);
if (i != strs.length - 1)
sb.append(s);
}
return sb.toString();
}
public static String[] split(String str, char separatorChar) {
return StringUtils.split(str, separatorChar);
}
public static List<String> splitToList(String str, char separatorChar) {//
if (StringUtil.isBlank(str)) {
return null;
}
List<String> list = new ArrayList<String>();
for (String s : StringUtil.split(str, separatorChar)) {
list.add(s);
}
return list;
}
public static boolean isBlank(String str) {
if (null == str)
return true;
if ("".equals(str.replaceAll(" "," ").trim()))
return true;
return false;
}
public static String toRandom(int j) {
StringBuilder s = new StringBuilder();
for (int i = 0; i < j; i++) {
Random r = new Random();
int n = r.nextInt(3);
if (n == 0) {
s.append(r.nextInt(9));
} else if (n == 1) {
s.append((char) ('a' + Math.random() * 26));
} else {
s.append((char) ('A' + Math.random() * 26));
}
}
return s.toString();
}
private static char[] numbersAndLetters = ("0123456789abcdefghijklmnopqrstuvwxyz" +
"0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ").toCharArray();
public static String randomString(int length) {
if (length < 1) {
return null;
}
// Create a char buffer to put random letters and numbers in.
char[] randBuffer = new char[length];
for (int i = 0; i < randBuffer.length; i++) {
randBuffer[i] = numbersAndLetters[new Random().nextInt(71)];
}
return new String(randBuffer);
}
public static boolean isMailAddr(String mailAddr) {
String check = "^[_A-Za-z0-9-]+(\\.[_A-Za-z0-9-]+)*@[A-Za-z0-9]+(\\.[A-Za-z0-9-]+)*(\\.[A-Za-z]{2,})$";
Pattern regex = Pattern.compile(check);
Matcher matcher = regex.matcher(mailAddr);
return matcher.matches();
}
public static boolean isNumber(String str) {
return (str != null) && RE_NUMBER.matcher(str).matches();
}
public static String getListToString(List<String> list, char separatorChar) {
if (null != list && list.size() > 0) {
StringBuilder sb = new StringBuilder();
for (int i = 0; i < list.size(); i++) {
sb.append(list.get(i));
if (i != list.size() -1) {
sb.append(separatorChar);
}
}
return sb.toString();
}
return null;
}
/**
* 取出html里所有标签和<scritp><style>内容
*
* @param html html内容
* @param replace 替换内容
* @return
*/
public static String getHtmlToText(String html, String replace) {
Matcher m = Html_TAG.matcher(html);
return m.replaceAll(replace);
}
/**
* 判断是否只字符
*
* @param s
* @return
*/
public static boolean regularCharacter(String s) {
return RE_CHARACTER.matcher(s).matches();
}
/**
* 解析bean对象属性
*
* @param p
* @return
*/
public static String getDisplayName(PropertyDescriptor p) {
if (null != p && null != p.getReadMethod()) {
if (p.getPropertyType() == boolean.class) {
return p.getReadMethod().getName().substring(2);
}
return p.getReadMethod().getName().substring(3);
}
return "";
}
/**
* 获取千分位
*
* @param s
* @return ##,###.00
*/
public static String getThousands(String s) {
try {
return THOUSANDS_TAG.format(Double.valueOf(s));
} catch (Exception e) {
return "";
}
}
public static void main(String[] args) {
System.out.println(StringUtil.getThousands("2500000.000"));
}
}
发表评论
-
java 读取Excel文件
2013-04-12 13:16 1230package com.aia.util; impor ... -
java ftp操作
2013-04-10 15:09 4045代码一: package com.aia.util; i ... -
用Apache POI将JTable表格数据导出生成Excel文件
2013-04-08 09:06 3580用 Apache POI 将JTable表格数据导出生成Ex ... -
Java解析XML汇总(DOM/SAX/JDOM/DOM4j/XPath)
2013-03-25 10:40 954Java解析xml、解析xml四种方法、DOM、SAX、J ... -
HTML导出数据生成excel
2013-03-22 10:36 969package com.fuxin.app.action. ... -
java实用工具(zip)
2013-03-21 16:14 876解压: package com.util.zip; impor ... -
问题汇总
2013-03-20 16:52 7951. 有时候eclipse会抽疯,项目更新tomcat重启后运 ... -
java实用工具(用3des进行ios加密后台解密)
2013-03-19 13:21 2732IOS 学习通信加密 通信加解密基本算是每个涉及到用户信息的客 ... -
java实用工具(加密)
2013-03-19 13:15 908声明:本文引自http://highill.iteye.com ... -
java实用工具(mail)
2013-03-19 13:16 828最简单的发送邮件方法 package com.omg.web ... -
java实用工具(XML)
2013-03-18 09:46 798package com.omg.web.util; impo ... -
java实用工具(图片)
2013-03-18 09:43 1011package com.omg.web.util; impo ... -
java实用工具(文件)
2013-03-18 09:41 832package com.omg.web.util; impo ... -
java实用工具(时间日期)
2013-03-18 09:38 1017时间工具: package com.omg.web.uti ...
相关推荐
Java字符串中${}或者{}等占位符替换工具类是一个功能强大且实用的工具类,它可以将Java字符串中的占位符依次替换为指定的值。该工具类的主要功能是实现占位符的替换,即将字符串中的${}或者{}等占位符依次替换为args...
标题中的“实用小工具:Java实体类对比、Json对比、字符串动态拼接等功能”涉及到的是在软件开发过程中常用的几个技术点,主要集中在Java后端和前端Vue.js的应用上。这里我们将详细探讨这些知识点: 1. **Java实体...
在这个类中,我们可以找到包括分隔、插入、判断字符串状态(空或非空)、去除空格等多种功能,这些都是在实际项目中非常实用的。 1. **字符串分隔**: `split()` 方法是字符串分隔的核心,它通常用于将一个字符串...
通过以上三个方法,我们可以灵活地处理字符串长度不足的情况,无论是简单的在前面补0还是使用更高级的格式化工具。这些方法都非常实用,尤其是在处理数据编号、日期时间等场景时非常有用。掌握这些技巧可以帮助我们...
在Java编程语言中,字符串处理是一项常见的任务,它涉及到对文本数据的各种操作,如编码转换、截取、加密和解密以及数值与字符串之间的转换。本组件提供了丰富的功能,简化了这些操作。以下是对该组件及其功能的详细...
1. **commons-collections-3.2.1.jar**:这是Apache Commons Collections库,提供了大量的集合框架增强功能,包括各种实用工具类和算法,虽然在解析JSON中它不是直接必要的,但可能会被其他库用作辅助工具。...
JSON官网上推荐的使用java解析json的类库,官网下载后的是未编译打包的java文件,这是我打包后的东东,使用时直接添加进Build path即可,简单实用……
正则表达式(Regular Expression)是一种用于匹配字符串中字符组合的工具。它在各种编程语言中都有应用,包括 Java。正则表达式的强大之处在于它可以灵活地匹配复杂的字符串模式,是进行文本搜索、替换、验证等操作...
综上所述,"SQL2JAVA-java字段串代码拼接小工具"是一个针对Java和SQL开发者的实用工具,它可以帮助简化字符串拼接的过程,尤其是构建SQL查询语句。通过提供直观的用户界面,使得开发者能够快速高效地在Java代码和SQL...
本资源为您推荐一款强大实用的Java工具类,能够帮助您快速地实现字符串驼峰与下划线之间的互转。 2、优点:支持多个复制列编辑,在多列编辑模式下,您只需要简单的复制粘贴即可一次性将多个驼峰或下划线转换成对应...
标题中的“文件夹搜索指定字符串软件”是一款专用于在...总的来说,这款“文件夹搜索指定字符串软件”结合了Java编程、文件I/O、字符串处理、多线程、跨平台技术等多个IT领域的知识,是一个实用且技术含量较高的工具。
在IT行业中,字符转换工具类是编程中常见的一种实用工具,尤其在处理字符串与各种编码格式之间转换时显得尤为重要。这个“字符转换工具类”似乎是一个专门为生成HTML源码而设计的工具,它包含了全面的源码实现,并且...
以上三个工具类都是软件开发中的实用组件,它们大大简化了开发人员处理时间、字符串和网络时间的工作。理解并熟练使用这些工具类能够提升代码的效率和质量,减少错误,同时也有助于构建更加健壮和可靠的系统。在实际...
### JAVA判断字符串是否为数字字符 在日常的Java开发工作中,我们经常需要验证用户输入的数据是否符合预期格式,比如验证电话号码、身份证号等是否仅包含数字。这种情况下,一个简单有效的工具方法就显得尤为重要了...
- `StringUtils.isNoneEmpty(s)`:这是一个非常实用的工具方法,它会检查字符串是否既不是`null`也不是空字符串。在例子中,当`s`为`null`时,这个方法返回`false`。 3. **基本字符串操作**: - `if (!"".equals...
"Java实现中文字符串与unicode互转工具类" Java实现中文字符串与unicode互转工具类是指使用Java语言实现中文字符串与unicode...这个工具类提供了一个简单的方式来实现中文字符串与unicode码之间的相互转换,非常实用。
"超级字符串批量替换工具"就是专为这类需求设计的一款高效实用的软件。这款工具以其便捷的操作和广泛的适用性,使得批量替换字符串变得轻而易举。 字符串替换通常涉及到文本编辑、编程语言中的字符串操作,例如在...
总结一下,这个压缩包提供的是两个关键的Java工具类,它们能够帮助Android开发者快速地将Map和List对象转换为JSON字符串。通过理解和使用这些工具,可以提高代码的可读性和效率,简化数据处理流程。在实际项目中,...
在Java编程语言中,字符串是极其重要的...总的来说,Java的字符串大小写转换功能是基础且实用的,是每个Java开发者必备的技能之一。通过深入理解和实践,你可以更好地驾驭这个强大的工具,提升代码的灵活性和可读性。
1. fr.exe:这是批处理工具的执行文件,很可能是一个用编程语言(如C++、Python或Java)编写的可执行程序,负责实现字符串替换的逻辑。用户只需运行这个程序,并按照提示输入需要替换的字符串和目标字符串,以及文件...