java字元串正則替換
1. java正則表達式替換一段字元串
Java正則表達式 .*(from.*)$ 替換成 select count(*) $1
完整的Java替換程序如下
publicclassAA{
publicstaticvoidmain(String[]args){
Strings="Selectafromxxxa"+"wherea.id=:id";
Stringregex=".*(from.*)$";
Stringresult=s.replaceAll(regex,"selectcount(*)$1");
System.out.println(result);
}
}
運行結果
selectcount(*)fromxxxawherea.id=:id
因為我不知道TbItem.class.getName()方法返回的表名,所以用xxx代替.
你可以用Strings="Selectafrom"+TbItem.class.getName()+"a"+"wherea.id=:id";沒問題不用改.
2. java正則表達式多個字元串替換怎樣實現
str.replaceAll("[A-Z]+\\d{3}", "hello").replaceAll("[^A-Za-z]", "==");
3. java字元串替換方法,參數:正則表達式,對表達式的不解。
json不帶引號,希望使用正則表達式替換後,增加引號。例如:json:{username:zhangsan,password:abc}變為{username:「zhangsan」,password:「abc」}
4. java怎樣將字元串中的字母替換掉
一:思路:
使用java方法replaceAll();通過正則表達式匹配替換掉所有的字母。
二:代碼如下(可直接復制出來運行,在控制台中查看效果):
publicstaticvoidmain(String[]args){
Stringstr="abc123123成你懂嗎bxcxsaf";
//通過正則表達式替換掉所有的字母
StringstrNew=str.replaceAll("[a-zA-Z]","");
System.out.println(strNew);
}
運行結果如下:
三:擴展(正則表達式)
正則表達式使用單個字元串來描述、匹配一系列符合某個句法規則的字元串。在很多情況下,通常被用來,檢索和替換符合某個規則的文本。
PS:有興趣可以深入研究一下正則表達式的語法,及規則。
5. 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);
}
6. java用正則表達式判定特殊字元是否,存在就替換的問題
String的replaceAll方法可以使用正則表達式進行搜索並替換,但不改變原字元串,如果需要改變原字元串,則需要用賦值語句:
ss=ss.replaceAll("正則表達式","替換內容");
比如將"aabbcc[{dd}]eeff[{gg}]hhiijjkkll[{mmnn}]oopp"里的[{等特殊符號去掉:
ss=ss.replaceAll("\W","");
7. java replaceAll方法 使用正則,分組分別替換不同的字元串,分別分組替換成多個不同字元
注意使用中文括弧轉義不加"\",使用英文括弧需要"\".
8. 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);
}
}
9. java正則表達式怎麼一個個替換匹配的內容
Stringa="我是f_static_000的f_static_001aaaf_static_001";
//正則根據自己需要修改,replaceAll可以使用正則的捕獲組功能,$n引用第n個捕獲組
/**
replaceAll(regExp,replacement);第一個參數是正則字元串,第二個是替換內容
正則裡面有捕獲(正則裡面用小括弧捕獲)和引用的功能
*/
a=a.replaceAll("(f_static_\d+)","#[face/png/$1.png]#");