⑴ string怎麼去掉字元串裡面的所有空格
string怎麼去掉字元串裡面的所有空格?
字元串,是java中最常用的一個數據類型了。我們在日常開發時候會經常使用字元串做很多的操作。比如字元串的拼接、截斷、替換等。
本文我們介紹一個比較常見又容易被忽略的一個操作,那就是移除字元串中的空格。
其實,在Java中從字元串中刪除空格有很多不同的方法,如trim,replaceAll等。但是,在Java 11添加了一些新的功能,如strip、stripLeading、stripTrailing等。
大多數時候,我們只是使用trim方法來刪除多餘的空格。但是好像很多人並沒有去思考過,是否有更好的方式呢?
當然,trim()在大多數情況下都工作得很好,但是Java中有許多不同的方法。每一種都有自己的優點和缺點。我們如何決定哪種方法最適合我們呢?
接下來我們將介紹幾種方法,並對比下他們的區別和優缺點等。
在java中從字元串中刪除空格的不同方法
首先,我們來看一下,想要從String中移除空格部分,有多少種方法,作者根據經驗,總結了以下7種(JDK原生自帶的方法,不包含第三方工具類庫中的類似方法):
trim() : 刪除字元串開頭和結尾的空格。
strip() : 刪除字元串開頭和結尾的空格。
stripLeading() : 只刪除字元串開頭的空格
stripTrailing() : 只刪除字元串的結尾的空格
replace() : 用新字元替換所有目標字元
replaceAll() : 將所有匹配的字元替換為新字元。此方法將正則表達式作為輸入,以標識需要替換的目標子字元串
replaceFirst() : 僅將目標子字元串的第一次出現的字元替換為新的字元串
需要注意的最重要的一點是,在Java中String對象是不可變的,這意味著我們不能修改字元串,因此以上所有的方法我們得到的都是一個新的字元串。
接下啦,我們分別針對以上這幾個方法學習下用法,了解下其特性。
PS:本文代碼都是使用在線運行工具(https://www.jdoodle.com/online-java-compiler/ )執行的,因為我的測試機並未安裝Java 11,並且Unicode字元也不完整。如果大家也想實驗,建議使用在線工具,選擇對應的JDK即可。
⑵ Java如何去除字元串中的空格、回車、換行符、製表符
importjava.util.regex.Matcher;
importjava.util.regex.Pattern;
publicclassStringUtils{
/**
*正則
*/
(Stringstr){
Stringdest="";
if(str!=null){
Patternp=Pattern.compile("\s*| | | ");
Matcherm=p.matcher(str);
dest=m.replaceAll("");
}
returndest;
}
publicstaticvoidmain(String[]args){
System.out.println(StringUtils.replaceBlank("justdoit!"));
}
/*-----------------------------------
笨方法:Strings="你要去除的字元串";
1.去除空格:s=s.replace('\s','');
2.去除回車:s=s.replace(' ','');
這樣也可以把空格和回車去掉,其他也可以照這樣做。
註: 回車(u000a)
水平製表符(u0009)
s空格(u0008)
換行(u000d)*/
}
⑶ java String去除兩端的空格和空字元
java中String有個trim()能夠去掉一個字元串的前後空格。
但是trim()只能去掉字元串中前後的半形空格,而無法去掉全形空格。
去掉全形空格需要在trim()方法的基礎上加上一些判斷。
String textContent ="abctest";
textContent = textContent.trim();
while (textContent.startsWith("")) {//這里判斷是不是全形空格
textContent = textContent.substring(1, textContent.length()).trim();
}
while (textContent.endsWith("")) {
textContent = textContent.substring(0, textContent.length() - 1).trim();
}
⑷ java中trim()方法是用來干什麼的
trim()的作用是去掉字元串兩端的多餘的空格,注意,是兩端的空格,且無論兩端的空格有多少個都會去掉,當然
中間的那些空格不會被去掉,如:
String s = " a s f g ";
String s1 = s.trim();
那麼s1就是"a s f g",可見,這和上面所說的是一樣的。
trim()不僅可以去掉空格,還能去掉其他一些多餘的符號,這些符號分別是:
v f x0085 x00a0 ? u2028 u2029
翻譯過來分別是:水平製表符,換行符,垂直製表符,換頁符,回車,後面的這幾個除了問號外,其他的都是轉義符形式寫法。
trim()函數移除字元串兩側的空白字元或其他預定義字元。
功能除去字元串開頭和末尾的空格或其他字元。函數執行成功時返回刪除了string字元串首部和尾部空格的字元串,發生錯誤時返回空字元串("")。如果任何參數的值為NULL,Trim() 函數返回NULL。
⑸ java string如何去除兩邊的全形空格
在Java中去字元串首尾空格或去除所有空格的(包括全形)方法如下:
/**
* 去除字元串中所包含的空格(包括:空格(全形,半形)、製表符、換頁符等)
* @param s
* @return
*/
public static String removeAllBlank(String s){
String result = "";
if(null!=s && !"".equals(s)){
result = s.replaceAll("[*| *| *|//s*]*", "");
}
return result;
}
/**
* 去除字元串中頭部和尾部所包含的空格(包括:空格(全形,半形)、製表符、換頁符等)
* @param s
* @return
*/
public static String trim(String s){
String result = "";
if(null!=s && !"".equals(s)){
result = s.replaceAll("^[*| *| *|//s*]*", "").replaceAll("[*| *|
*|//s*]*$", "");
}
return result;
}