java替換所有
『壹』 java replaceall 怎麼替換
replace和replaceAll是JAVA中常用的替換字元的方法,它們的區別是:
1)replace的參數是char和CharSequence,即可以支持字元的替換,也支持字元串的替換(CharSequence即字元串序列的意思,說白了也就是字元串);
2)replaceAll的參數是regex,即基於規則表達式的替換,比如,可以通過replaceAll("\\d", "*")把一個字元串所有的數字字元都換成星號;
相同點:都是全部替換,即把源字元串中的某一字元或字元串全部換成指定的字元或字元串,如果只想替換第一次出現的,可以使用replaceFirst(),這個方法也是基於規則表達式的替換,但與replaceAll()不同的是,只替換第一次出現的字元串;
另外,如果replaceAll()和replaceFirst()所用的參數據不是基於規則表達式的,則與replace()替換字元串的效果是一樣的,即這兩者也支持字元串的操作;
還有一點注意::執行了替換操作後,源字元串的內容是沒有發生改變的。
舉例如下:
String src = new String("ab43a2c43d");
System.out.println(src.replace("3","f"));=>ab4f2c4fd.
System.out.println(src.replace('3','f'));=>ab4f2c4fd.
System.out.println(src.replaceAll("\\d","f"));=>abffafcffd.
System.out.println(src.replaceAll("a","f"));=>fb43fc23d.
System.out.println(src.replaceFirst("\\d,"f"));=>abf32c43d
System.out.println(src.replaceFirst("4","h"));=>abh32c43d.
如何將字元串中的"\"替換成"\\":
String msgIn;
String msgOut;
msgOut=msgIn.replaceAll("\\\\","\\\\\\\\");
原因:
'\'在java中是一個轉義字元,所以需要用兩個代表一個。例如System.out.println( "\\" ) ;只列印出一個"\"。但是'\'也是正則表達式中的轉義字元(replaceAll 的參數就是正則表達式),需要用兩個代表一個。所以:\\\\被java轉換成\\,\\又被正則表達式轉換成\。
同樣
CODE: \\\\\\\\
Java: \\\\
Regex: \\
將字元串中的'/'替換成'\'的幾種方式:
msgOut= msgIn.replaceAll("/", "\\\\");
msgOut= msgIn.replace("/", "\\");
msgOut= msgIn.replace('/', '\\');
通過實例區分了java中replace()和replaceAll()的不同點,希望本文對大家學習有所幫助
『貳』 java怎樣將字元串中的字母替換掉
一:思路:
使禪坦用java方法replaceAll();通過正則茄皮表達式匹配替換掉所有的字母。
二:代碼如下賀納桐(可直接復制出來運行,在控制台中查看效果):
1
2
3
4
5
6
public static void main(String[] args){
String str="abc123123成你懂嗎bxcxsaf";
//通過正則表達式替換掉所有的字母
String strNew = str.replaceAll("[a-zA-Z]","");
System.out.println(strNew);
}
運行結果如下:
『叄』 java字元串替換所有方法如下語句怎麼簡化
可以用Java正則表達式一個replaceAll方法能達到相同的目的.
完整的Java程序如下
public class F{
public static void main(String[] args){
String s1="001002003";
String regex="([0-9]{3})";
String s2=s1.replaceAll(regex,"$1H");
System.out.println(s2);
}
}
『肆』 java如何替換文本中所有的字元串ab,但abc中的ab不變
建議使用正則匹配
替換文本中所有的字元串ab,但abc中的ab不變
ab(?!c)
就是說如果現在要替換asdfgh,如果有asdfghjkl,這個地方不換,只有asdfgh前後不是英文字母才換
如果是獨立單詞的話:
asdfgh
如果是匹配前後不是英文字母的話:
[^a-zA-Z](asdfgh)[^a-zA-Z]?