Java中删除String中空格的多种方法

2年前 (2022) 程序员胖胖胖虎阿
226 0 0

在Java中,要实现删除String中的空格的方法有很多种,具体有:

1、 trim()

删除字符串开头和结尾的空格,Java 1版本引入的接口,这是开发人员最常用的方法。trim移除的空白字符指的是指ASCII值小于或等于32的任何字符(’ U+0020 '),其中包含了空格、换行、退格等字符。

String value = " Hellow world ! ";
System.out.println("before: \'" + value + "\'");
String afterValue = value.trim();
System.out.println("after: \'" + afterValue + "\'");

结果为:

before: ' Hellow world ! '
after: 'Hellow world !'

2、strip()

删除字符串开头和结尾的空格。与trim()功能基本相同,在Java 11版本上引入的接口,区别在于删除的是根据Unicode标准来标识的所有空格字符,除了ASCII中的字符以外,还是有很多其他的空白字符。

String value = " Hellow world ! ";
System.out.println("before: \'" + value + "\'");
String afterValue = value.strip();
System.out.println("after: \'" + afterValue + "\'");

结果为:

before: ' Hellow world ! '
after: 'Hellow world !'

3、stripLeading()

只删除字符串开头的空格

4、stripTrailing()

只删除字符串结尾的空格

5、replace()

用新字符替换所有目标字符,java 1.5中引入,replace方法和trim方法一样,只能替换掉ASCII中的空格字符;

String value = " Hellow world !";
System.out.println("before:\'" + value + "\'");
String afterValue = value.replace(" ", "");
System.out.println("after:\'" + afterValue + "\'");

结果为:

before:' Hellow world !'
after:'Hellowworld!'

6、replaceAll()

将所有匹配的字符替换为新字符。Java 1.4中引入,此方法将正则表达式作为输入,以标识需要替换的目标子字符串。相关删除空格的正则表达式如下:

\s+   	所有的空白字符     
^\s+   	字符串开头的所有空白字符     
\s+$  	字符串结尾的所有空白字符

测试代码:

String value = " Hellow world !";
System.out.println("before:\'" + value + "\'");
String afterValue = value.replaceAll("\\s+", "");
System.out.println("after:\'" + afterValue + "\'");

结果:

before:' Hellow world !'
after:'Hellowworld!'

7、replaceFirst()

仅将目标子字符串的第一次出现的字符替换为新的字符串, Java 1.4中引入,

注意:

无论采用哪种方法删除String中的空格,都需要另外定义一个String进行结果赋值,因为这些方法不会改变原有String的值。

String value = " Hellow world !";
System.out.println("before:\'" + value + "\'");
value.replace(" ", "");//正确方法: String after = value.replace(" ", "");
System.out.println("after:\'" +Value + "\'");

结果未发生变化:

before: ' Hellow world ! '
after: ' Hellow world ! '

版权声明:程序员胖胖胖虎阿 发表于 2022年10月26日 下午6:32。
转载请注明:Java中删除String中空格的多种方法 | 胖虎的工具箱-编程导航

相关文章

暂无评论

暂无评论...