All Downloads are FREE. Search and download functionalities are using the official Maven repository.

org.iartisan.runtime.utils.StringUtils Maven / Gradle / Ivy

There is a newer version: 1.1.1
Show newest version

package org.iartisan.runtime.utils;

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


public class StringUtils {

    /**
     * 下划线字符
     */
    public static final char UNDERLINE = '_';

    /**
     * 空字符串
     */
    public static final String EMPTY_STRING = "";

    /**
     * 

* 判断字符串是否为空 *

* * @param str 需要判断字符串 * @return 判断结果 */ public static boolean isEmpty(String str) { return str == null || EMPTY_STRING.equals(str.trim()); } /** *

* 判断字符串是否不为空 *

* * @param str 需要判断字符串 * @return 判断结果 */ public static boolean isNotEmpty(String str) { return !isEmpty(str); } public static boolean isNotBlank(String str) { return isNotEmpty(str); } public static boolean isBlank(String str) { return isEmpty(str); } /** *

* 字符串驼峰转下划线格式 *

* * @param param 需要转换的字符串 * @return 转换好的字符串 */ public static String camelToUnderline(String param) { if (isEmpty(param)) { return EMPTY_STRING; } int len = param.length(); StringBuilder sb = new StringBuilder(len); for (int i = 0; i < len; i++) { char c = param.charAt(i); if (Character.isUpperCase(c) && i > 0) { sb.append(UNDERLINE); } sb.append(Character.toLowerCase(c)); } return sb.toString(); } /** *

* 字符串下划线转驼峰格式 *

* * @param param 需要转换的字符串 * @return 转换好的字符串 */ public static String underlineToCamel(String param) { if (isEmpty(param)) { return EMPTY_STRING; } int len = param.length(); StringBuilder sb = new StringBuilder(len); for (int i = 0; i < len; i++) { char c = param.charAt(i); if (c == UNDERLINE) { if (++i < len) { sb.append(Character.toUpperCase(param.charAt(i))); } } else { sb.append(c); } } return sb.toString(); } public static boolean isUpperCase(String str) { return match("^[A-Z]+$", str); } /** *

* 正则表达式匹配 *

* * @param regex 正则表达式字符串 * @param str 要匹配的字符串 * @return 如果str 符合 regex的正则表达式格式,返回true, 否则返回 false; */ public static boolean match(String regex, String str) { Pattern pattern = Pattern.compile(regex); Matcher matcher = pattern.matcher(str); return matcher.matches(); } /** *

* 使用单引号包含字符串 *

* * @param obj 原字符串 * @return 单引号包含的原字符串 */ public static String quotaMark(Object obj) { String srcStr = String.valueOf(obj); if (obj instanceof String && !srcStr.matches("\'(.+)\'")) { return "\'" + srcStr + "\'"; } return srcStr; } public static String concatCapitalize(String concatStr, final String str) { if (isEmpty(concatStr)) { concatStr = EMPTY_STRING; } int strLen; if (str == null || (strLen = str.length()) == 0) { return str; } final char firstChar = str.charAt(0); if (Character.isTitleCase(firstChar)) { // already capitalized return str; } return new StringBuilder(strLen).append(concatStr).append(Character.toTitleCase(firstChar)) .append(str.substring(1)).toString(); } public static String capitalize(final String str) { return concatCapitalize(null, str); } }




© 2015 - 2024 Weber Informatics LLC | Privacy Policy