① java怎麼把一個字元串中的字元替換成別的字元
如何將字元串中的"\"替換成"\\":
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('/', '\\');
將字元串中的'\'替換成'/'的幾種方式:
msgOut= msgIn.replaceAll("\\\\","/");
msgOut= msgIn.replace("\\","/");
② Java 正則表達式 替換字元串中人名
public static void main(String[] args) {
System.out.println("請輸入姓名:");
Scanner in=new Scanner(System.in);
String input=in.nextLine();
//保留姓氏
char str2=input.charAt(0);
//截取名字
String str1=input.substring(1);
//用正則表達式替換(包括漢字,數字,大小寫字母)
str1=str1.replaceAll("[^x00-xff]|\w", "x");
//輸出替換後的名字
System.out.println(str2+str1);
}
③ java:請按如下要求利用正則表達式替換字元串,謝謝
你可以利用
int start = "xxx[0001112]ss".indexOf('[') + 1;
int end = "xxx[0001112]sss".indexOf(']');
String s="xxx[0001112]sss".substring(start, end);
然在做轉換成
char[] c = "xxx[0001112]sss".toCharArray();
做添加就好了
再轉回String
④ 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 正則替換同一類字元串
Patternp=Pattern.compile("<ap="(\S+)"pp="(\S+)">(\S+)</a>");
String[]strs={"<ap="變數1"pp="變數2">表達式1</a>",
"<ap="變數3"pp="變數4">表達式2</a>",
"<ap="變數5"pp="變數6">表達式3</a>"};
for(Stringstr:strs){
Matcherm=p.matcher(str);
if(m.matches()){
Stringsub=String.format("<xm="%s!=null">%s%s</x>",
m.group(2),m.group(1),m.group(3));
System.out.println(sub);
}
}
⑥ java正則表達式怎麼定義只替換中間的字元
可以使用分組來完成,替換字元串中使用$1、$2、$3……可以獲取對應組的匹配結果。如果前後的字元串是固定的那更簡單,直接在替換的時候寫上就好了。
因為String的replaceAll就是使用的正則表達式所以示例直接使用的String的替換,Pattern的替換同理。
publicclassDemo{
publicstaticvoidmain(String[]args){
Stringstr="aa文字1bb哈哈cc測試dx,測試字元串aa1234bb";
//替換aa、bb之間的字元串為"成功"
Stringstr1=str.replaceAll("aa.*?bb","aa成功bb");
System.out.println(str1);
//替換aa、bb之間的字元串為"成功"
Stringstr2=str.replaceAll("(aa).*?(bb)","$1成功$2");
System.out.println(str2);
//替換小寫字母之間的字元串為"成功"
Stringstr3=str.replaceAll("([a-z]+).*?([a-z]+)","$1成功$2");
System.out.println(str3);
}
}
⑦ java使用正則表達式替換字元串
正則改成這個: (?<=\\b)\\W*/r(?=\\b)
⑧ java正則表達式取值並保持格式替換
import java.util.regex.*;
public class Exam
{
public static void main(String[] args)
{
final String s="t1:\"1:0\",t2:\"2:0\",t3:\"2:1\",t4:\"2:2\"",d;
Pattern p=Pattern.compile("(\\d):(\\d)");
Matcher m=p.matcher(s);
// System.out.println(s);
d=m.replaceAll("s$1$2");
System.out.println(d);
}
}
⑨ java正則表達式多個字元串替換怎樣實現
str.replaceAll("[A-Z]+\\d{3}", "hello").replaceAll("[^A-Za-z]", "==");
⑩ java正則表達式是什麼
在程序開發中,難免會遇到需要匹配、查找、替換、判斷字元串的情況發生,而這些情況有時又比較復雜,如果用純編碼方式解決,往往會浪費程序員的時間及精力。因此,學習及使用正則表達式,便成了解決這一矛盾的主要手段。
正則表達式是一種可以用於模式匹配和替換的規范,一個正則表達式就是由普通的字元(例如字元a到z)以及特殊字元(元字元)組成的文字模式,它 用以描述在查找文字主體時待匹配的一個或多個字元串。正則表達式作為一個模板,將某個字元模式與所搜索的字元串進行匹配。
(10)java正則表達式替換字元串擴展閱讀:
正則表達式的特點是:
1、靈活性、邏輯性和功能性非常強;
2、可以迅速地用極簡單的方式達到字元串的復雜控制。
3、對於剛接觸的人來說,比較晦澀難懂。
由於正則表達式主要應用對象是文本,因此它在各種文本編輯器場合都有應用,小到著名編輯器EditPlus,大到Microsoft Word、Visual Studio等大型編輯器,都可以使用正則表達式來處理文本內容。