更新時間:2022-12-19 11:43:05 來源:動力節(jié)點 瀏覽6085次
Java去除空格的方法是什么?動力節(jié)點小編來告訴大家。
1. String.trim() --------------trim()是去掉首尾空格
2.str.replace(" ", ""); 去掉所有空格,包括首尾、中間
String str = " hell o Wor d";
String str2 = str.replaceAll(" ", "");
System.out.println(str2);
3.或者replaceAll(" +",""); 去掉所有空格
4.str = .replaceAll("\s*", "");
可以替換大部分空白字符, 不限于空格
s 可以匹配空格、制表符、換頁符等空白字符的其中任意一個。
5.下面的代碼也可以去掉所有空格,包括首尾、中間
public String remove(String resource,char ch)
{
StringBuffer buffer=new StringBuffer();
int position=0;
char currentChar;
while(position<resource.length())
{
currentChar=resource.charAt(position++);
if(currentChar!=ch) buffer.append(currentChar); } return buffer.toString();
}
-------------------------------Test-----------------------------------------------------
package practisedemo;
public class Demo{
public static String remove(String resource,char ch)
{
StringBuffer buffer=new StringBuffer();
int position=0;
char currentChar;
while(position<resource.length())
{
currentChar=resource.charAt(position++);
//如果當(dāng)前字符不是要去除的字符,則將當(dāng)前字符加入到StringBuffer中
if(currentChar!=ch) buffer.append(currentChar);
}
return buffer.toString();
}
public static void main(String args[]) {
String str= "afdsfdf 了 2012 0407 Alamps 老師";
char c=' ';
System.out.println("結(jié)果為:"+Demo.remove(str, c));
}
}
有一個字符串開頭或結(jié)尾含有n個空格(” abcdefgdddd ”),欲去掉前后空格,返回一個新字符串。
int trimSpace(char *bufscr,char *bufdes)
{
int i=0;
char *p=bufscr;//指針變量,為了不修改傳入指針
int len=strlen(bufscr);
int j=len-1;
int count;//非空字符長度
int ret=0;
//首先判斷傳入的指針是否為空
if (bufscr==NULL||bufdes==NULL)
{
ret=-1;
printf("func trimSpace err %d:",ret);
return ret;
}
while(isspace(p[i])&&p[i]!='')
{
i++;
}
while(isspace(p[j])&&j>0)
{
j--;
}
count=j-i+1;
memcpy(bufdes,p+i,count);
//這里一定要注意,字符串?dāng)?shù)組和字符串的區(qū)別就在于字符串?dāng)?shù)組末尾多''。
bufdes[count]='';
return ret;
}
打印結(jié)果如下所示
相關(guān)閱讀
0基礎(chǔ) 0學(xué)費 15天面授
有基礎(chǔ) 直達(dá)就業(yè)
業(yè)余時間 高薪轉(zhuǎn)行
工作1~3年,加薪神器
工作3~5年,晉升架構(gòu)
提交申請后,顧問老師會電話與您溝通安排學(xué)習(xí)
初級 202925
初級 203221
初級 202629
初級 203743