概述
import org.springframework.util.StringUtils;
/**
* 下划线大小写互转
*
* @author jiaohongtao
* @version 1.0
* @since 2020年08月10日
*/
public class FieldToColumn {
/**
* 大写转小写下划线
* @param filed 字符串
*/
public static String fieldToColumn(String filed) {
if (StringUtils.isEmpty(filed)) {
return "";
} else {
StringBuilder builder = new StringBuilder(filed);
int count = 0;
builder.replace(0, 1, (filed.charAt(0) + "").toLowerCase());
for (int i = 1; i < filed.length(); ++i) {
char c = filed.charAt(i);
if (c >= 'A' && c <= 'Z') {
builder.replace(i + count, i + count + 1, (c + "").toLowerCase());
builder.insert(i + count, "_");
++count;
}
}
return builder.toString();
}
}
/**
* 首字母大写
*
* @param filed 对应字符串
*/
public static String firstCharacterToUpper(String filed) {
return filed.substring(0, 1).toUpperCase() + filed.substring(1);
}
/**
* 替换字符串并让它的下一个字母为大写
*
* @param filed 对应字符串
* @param split 分隔符
* @param replace 替换字符
*/
public static String replaceUnderlineAndFirstToUpper(String filed, String split, String replace) {
StringBuilder newString = new StringBuilder();
int first;
while (filed.contains(split)) {
first = filed.indexOf(split);
System.out.println("分隔符位置:" + first);
if (first != filed.length()) {
newString.append(filed, 0, first).append(replace);
System.out.println("当前newString拼接为:" + newString);
filed = filed.substring(first + split.length());
filed = firstCharacterToUpper(filed);
}
}
newString.append(filed);
return newString.toString();
}
public static void main(String[] args) {
System.out.println(fieldToColumn("abcdAbC"));
System.out.println(replaceUnderlineAndFirstToUpper("abc_ef_g_h", "_", ""));
}
}
最后
以上就是文艺菠萝为你收集整理的下划线大小写转换的全部内容,希望文章能够帮你解决下划线大小写转换所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复