導航:首頁 > 編程語言 > javareplaceall替換不了

javareplaceall替換不了

發布時間:2025-07-09 16:44:55

java中REPLACE和REPLACEALL的區別 以及一些特殊字元替換

replace的參數是char和CharSequence,即可以支持字元的替換,也支持字元串的替換(CharSequence即字元串序列的意思,說白了也就是字元串);

replaceAll的參數是regex,即基於規則表達式的替換,比如:可以通過replaceAll("\\d", "*")把一個字元串所有的數字字元都換成星號;

相同點:都是全部替換,即把源字元串中的某一字元或字元串全部換成指定的字元或字元串;

不同點:replaceAll支持正則表達式,因此會對參數進行解析(兩個參數均是),如replaceAll("\\d", "*"),而replace則不會,replace("\\d","*")就是替換"\\d"的字元串,而不會解析為正則。

另外還有一個不同點:「\」在Java中是一個轉義字元,所以需要用兩個代表一個。

例如System.out.println( "\\" ) ;只列印出一個"\"。但是「\」也是正則表達式中的轉義字元,需要用兩個代表一個。所以:\\\\被java轉換成\\,\\又被正則表達式轉換成\,因此用replaceAll替換「\」為"\\",就要用replaceAll("\\\\","\\\\\\\\"),而replace則replace("\\","\\\\")。

如果只想替換第一次出現的,可以使用replaceFirst(),這個方法也是基於規則表達式的替換,但與replaceAll()不同的是,只替換第一次出現的字元串。

Ⅱ JAVA中,我想把下面的的全形括弧轉換成半形括弧,怎麼實現啊!我用replaceAll,好像不行。

方法:

直接用replaceAll來替換

方法2:

importjava.io.UnsupportedEncodingException;

publicclassTest{

(StringQJstr)
{

StringBufferoutStrBuf=newStringBuffer("");

StringTstr="";

byte[]b=null;

for(inti=0;i<QJstr.length();i++){

Tstr=QJstr.substring(i,i+1);

if(Tstr.equals("")){

//半形空格

outStrBuf.append(Tstr);

continue;

}

b=Tstr.getBytes("unicode");

if(b[2]==0){

//半形?

b[3]=(byte)(b[3]-32);

b[2]=-1;

outStrBuf.append(newString(b,"unicode"));

}else{

outStrBuf.append(Tstr);

}

}

returnoutStrBuf.toString();

}

publicstaticvoidmain(String[]args){
Stringname="購物(網上商城)";
System.out.println(half2Fullchange(name));

}

}

Ⅲ 請問java怎樣使用replace()方法替換某字元串中的"."(點號)

我告訴你!直接使用replace()這個方法就行了!

replace是不帶正則表達式的全部字版符串替換權,replaceAll是帶正則表達式的全部字元串替換,並不是它們的英文直觀的意思!

詳細說明:

java字元串的替換replace、replaceAll、replaceFirst的區別詳解網頁鏈接

閱讀全文

與javareplaceall替換不了相關的資料

熱點內容
ug裝配體找不到文件部件已刪除 瀏覽:629
小網站怎麼弄出來 瀏覽:649
jsp表單加參數 瀏覽:607
蘋果5s手機老是卡屏 瀏覽:58
js給php變數賦值 瀏覽:446
雜志版本號是什麼意思 瀏覽:223
地圖特效代碼 瀏覽:192
去除思科配置文件中的號 瀏覽:196
運行的16位程序太多 瀏覽:1
蘋果mac用什麼軟體好學編程 瀏覽:681
ai中線段怎麼添加寬度配置文件 瀏覽:956
lol文件怎麼找不到game 瀏覽:142
aecc視頻教程 瀏覽:983
linux怎麼查看資料庫用戶名 瀏覽:182
cefs文件系統 瀏覽:404
學平面設計個編程哪個好 瀏覽:701
如何把編程文件轉為hex 瀏覽:80
清除蘋果地圖來自地址 瀏覽:233
已經打開的文件如何清理 瀏覽:685
視頻網站有什麼用 瀏覽:70

友情鏈接