/**
*
* @param target 需处理的字符串
* @param size 指定长度
* @param insert 插入的字符
* @return
*/
public static String collapseString(String target, int size, String insert){
if(StringUtils.isEmpty(target)) return null; //目标字符串为空,返回目标字符串
Pattern p = Pattern.compile("\\s*|\t|\r|\n");
Matcher m = p.matcher(target);
target = m.replaceAll("");
int target_length = target.length();
if(target_length <= size) return target; //目标字符串长度等于间隔长度 , 返回目标字符串
insert = StringUtils.isEmpty(insert) ? "<br/>" : insert;
//插入次数
int times = 0;
if(target_length % size == 0){
times = target_length / size - 1;
}else{
times = target_length / size;
}
//结果字符集
char [] result_chars = new char[target_length + times];
//目标字符集
char [] target_chars = new char[target_length];
//将字符串数据装入目标字符集
target.getChars(0, target_length, target_chars, 0);
//遍历目标字符集,将值插入到结果字符集
int j = 0;
for(int i = 0; i < target_chars.length; i++){
//间隔处插入值
if(i > 0 && i % size == 0){
result_chars[j] = '`';
j = j + 1;
}
result_chars[j] = target_chars[i];
j = j + 1;
}
String resultStr = new String(result_chars);
return resultStr.replaceAll("`", insert);
}
去掉字符串中的空格、换行等符号
最新推荐文章于 2024-05-10 09:15:00 发布