正则表达式-Java中如何给字符串加空格

问题描述

Java中如何给字符串加空格

Java中如何在一个字符串中每隔四个字符,加入一个空格,然后再将字符串输入到一个新定义的字符串,如:
str1=ADSFBKI89H8H8M8J8F8T9%Th09I;
我需要每隔四个加一个空格,有几种实现方法??

解决方案

给一种实现,直接上代码......
import java.util.Arrays;

public class Test09 {
public static void main(String[] args) {
String old="ADSFBKI89H8H8M8J8F8T9%Th09I";
char[] chars=new char[old.length()];//创建字符串等长的字符数组,用于存放拆分的字符
old.getChars(0, old.length(), chars, 0);//将字符串拆分为字符存到chars数组中
// System.out.println(Arrays.toString(chars));
StringBuilder sb=new StringBuilder();//频繁修改字符串时使用StringBuilder效率高
int count=0;
for(char ch:chars){//遍历字符数组,存入sb中,每4个加一个空格
sb.append(ch);
count++;
if(count%4==0){
sb.append(" ");
}
}
String news=sb.toString();//新字符串生成
System.out.println(news);//打印结果:ADSF BKI8 9H8H 8M8J 8F8T 9%Th 09I
}

}

解决方案二:

 for (int i = 0; i < str1.length(); i+=4)
{
Str2 += str1.subString(i, 4) + " ";
}

解决方案三:

java去除字符串空格
Java中如何去掉字符串中的空格
【JAVA】之【去掉字符串中的空格】

解决方案四:

for (int i = 0; i < str1.length(); i+=4)
{
Str2 += str1.subString(i, 4) + " ";
i=i+4;
}

解决方案五:

for (int i = 0; i < str1.length(); i++)
    {
        if(i+4<str1.length())
            str2 += str1.substring(i, i+4) + " ";
        else
            str2 += str1.substring(i, str1.length());
        i=i+3;
    }

    亲测没问题

解决方案六:

 public class StringTest {

    public static void main(String[] args) {

        String str = "ADSFBKI89H8H8M8J8F8T9%Th09I";
        String stri = spaceAt4(str);
        System.out.println(stri);

    }

    public static String spaceAt4(String str) {

        StringBuilder sb = new StringBuilder();
        int length = str.length();
        for (int i = 0; i < length; i += 4) {
            if (length - i <= 8) {      //防止ArrayIndexOutOfBoundsException
                sb.append(str.substring(i, i + 4)).append(" ");
                sb.append(str.substring(i + 4));
                break;
            }
            sb.append(str.substring(i, i + 4)).append(" ");
        }

        return sb.toString();
    }

}

解决方案七:

有没有会正则表达式写的,使用正则表达式能不能加入空格

时间: 2024-11-08 20:22:42

正则表达式-Java中如何给字符串加空格的相关文章

java 正则表达式-这条java中的替换字符串的正则表达式是什么意思?能不能详细解释一下

问题描述 这条java中的替换字符串的正则表达式是什么意思?能不能详细解释一下 replaceAll("([^u4e00-u9fa5]{1})([^u4e00-u9fa5]{1})", "$2") 解决方案 在计算机科学中,是指一个用来描述或者匹配一系列符合某个句法规则的字符串的单个字符串.在很多文本编辑器或其他工具里,正则表达式通常被用来检索和/或替换那些符合某个模式的文本内容.许多程序设计语言都支持利用正则表达式进行字符串操作.例如,在Perl中就内建了一个功能

输入输出-Java中如何将字符串转化为字节数组,并输出

问题描述 Java中如何将字符串转化为字节数组,并输出 Java中如何将字符串转化为字节数组,并输出,比如得到的输入为 :String str="我是好学生,My name is Studentdaiwei!" 转化为字节数组中,并输出 又如何将字节数组转化为比特数组并输出 解决方案 这个涉及编码的问题,不同的编码输出的字节不同.用getByteshttp://blog.csdn.net/zheng0518/article/details/11532815 解决方案二: String

java中比较未知字符串所包好的内容

问题描述 java中比较未知字符串所包好的内容 比如说我有两个词.中国 和国人,(这个字符串是未知的,我只是举例),怎么判断这两个字符串中 都包含相同的内容,在上述例子中相同的内容就是"国"?最好不用数组,求大神指导! 解决方案 public static int[][] LCS(String str1, String str2) { int[][] opt = new int[str2.length() + 1][str1.length() + 1]; for (int i = 0;

Java 中基本类型和字符串之间的转换

Java 中基本类型和字符串之间的转换 在程序开发中,我们经常需要在基本数据类型和字符串之间进行转换. 其中,基本类型转换为字符串有三种方法: 1. 使用包装类的 toString() 方法 2. 使用String类的 valueOf() 方法 3. 用一个空字符串加上基本类型,得到的就是基本类型数据对应的字符串 再来看,将字符串转换成基本类型有两种方法: 1. 调用包装类的 parseXxx 静态方法 2. 调用包装类的 valueOf() 方法转换为基本类型的包装类,会自动拆箱 PS:其他基

举例讲解Java中数组和字符串类型的使用方法_java

Java数组 数组是具有相同数据类型的一组数据的集合,Java支持多为数组,一维数组的每个基本单元都是基本数据类型的数据,二维数组就是每个基本单元是一维数组的一维数组,以此类推,n维数组的每个基本单元都是n-1为数组的n-1维数组.下面以一维数组为例说明Java数组的用法. 1.数组声明 数组声明有如下两种形式(方括号的位置不同): int arr[]; int[] arr2; 2.数组初始化 数组初始化也有两种形式,如下(使用new或不使用new): int arr[] = new int[]

Java中得到一个字符串中每个字符的Unicode值

字符串 /** Java 中int类型是16个bit,char也是16位的,正好可以表示Unicode类型的所有字符 所以,要在字符和unicode值之间转换时,只需要做相应的char int转换就可以了. */ class Unicode { public static void main(String[] args) { String s="我是慈勤强,很高兴认识大家,http://blog.csdn.net/cqq"; char[] c=s.toCharArray(); for(

java中split拆分字符串函数用法

经常需要用java拆分字符串如1,2,3,4 tom,jim,andy,han 1.语法如下 String.split(sourceStr,maxSplit) String.split(sourceStr) 参数说明:sourceStr是被分割的字符串,maxSplit是最大的分割数 返回值说明:split函数的返回值是一个字符串数组String[] 例子  代码如下 复制代码 package com.java.lang;   public class StringSp {    /**   *

java中替换去除字符串中的空格/回车/换行符/制表符

用String对象的方法replaceAll就可以了! replaceAll(String regex, String replacement)           使用给定的 replacement 字符串替换此字符串匹配给定的正则表达式的每个子字符串. 示例代码:  代码如下 复制代码 public class T3 { public static void main(String args[]) {  String str="aa bb cc";  System.out.prin

java中截取指定字符串长度函数

     /*      * content内容过长可能会导致xml文件过大,加载太慢.      * 但从seo的角度考虑全部输出有利于搜索引擎,但一般情况下内容也不会太多      * 为防止空格换行css无法控制撑大页面,用正则表达式替换掉空格,所以截取前面100个字符,页面显示的内容多少用css控制       *zdz的作品,流风的作品      */      //str.trim().replaceAll("\s+"," ");      String