欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Java 實(shí)現(xiàn)repalceAll只替換第二個(gè)匹配到的字符串

 更新時(shí)間:2020年12月03日 11:42:09   作者:蝸牛寫(xiě)java  
這篇文章主要介紹了Java 實(shí)現(xiàn)repalceAll只替換第二個(gè)匹配到的字符串,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧

String replace replaceFirst repaceAll區(qū)別

replace(char oldChar, char newChar)

返回一個(gè)新的字符串,它是通過(guò)用 newChar 替換此字符串中出現(xiàn)的所有 oldChar 得到的。

replaceAll(String regex, String replacement)

使用給定的 replacement 替換此字符串所有匹配給定的正則表達(dá)式的子字符串

replaceFirst(String regex, String replacement)

使用給定的 replacement 替換此字符串匹配給定的正則表達(dá)式的第一個(gè)子字符串。

總結(jié):

replace 替換的是char,replaceAll、replaceFirst替換的可以是字符串,也可以是正則表達(dá)式;三者返回的都是一個(gè)新的字符串。

例題

需求:將字符串 time:[* TO *] 中第二個(gè)*替換為 test

實(shí)現(xiàn)代碼

@Test 
public void replaceSecondStr() { 
 String test = "time:[* TO *]"; 
 String result1 = test.replaceAll("(\\*)(.*?)(\\1)(.*?)", "$1$2test$4"); 
 System.out.println("原字符串:" + test);
 System.out.println("替換后:" + result1);
}

輸出:

原字符串:time:[* TO *]

替換后:time:[* TO test]

總結(jié):

正則中()表示提取匹配的字符串并分組;會(huì)分配存儲(chǔ)空間,可以用$1取得匹配到的字符串;

\\1表示與第一個(gè)()中匹配的內(nèi)容相同,也可以繼續(xù)寫(xiě)(\\*);

(.*?)為勉強(qiáng)匹配方式,意思是匹配任何字符。

補(bǔ)充(取出匹配到的字符串)

@Test
public void findGroup() {
 String test = "time:[* TO *]";
 Matcher matcher = Pattern.compile("(\\*)(.*?)(\\1)(.*?)").matcher(test);
 if (matcher.find()) {
  System.out.println(matcher.group());
 }
}

補(bǔ)充知識(shí):java字符串的操作:去除字符、替換字符、多個(gè)字符分隔字符串

看代碼吧~

// 去除空格,換行,制表符
public String replaceBlank(String str) {
String dest = "";
if (str!=null) {
Pattern p = Pattern.compile("\\s*|\t|\r|\n"); // 去除多個(gè)空格,去除制表符,回車(chē),換行
Matcher m = p.matcher(str);
dest = m.replaceAll("");
}
return dest;
}
String s = "你要去除的字符串";

1.去除空格:s = s.replace('\\s','');

2.去除回車(chē):s = s.replace('\n','');

字符串去除多個(gè)字符串(括號(hào)):

String cal = tableStrings.get(i).replaceAll("\\(|\\)", ""); // 去除左右括號(hào)

字符串分隔多個(gè)字符:

String[] temp = cal.split("\\+|\\-|\\*|\\/"); // 按照加減乘除字符分隔字符串

以上這篇Java 實(shí)現(xiàn)repalceAll只替換第二個(gè)匹配到的字符串就是小編分享給大家的全部?jī)?nèi)容了,希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。

相關(guān)文章

  • springboot3.x版本集成log4j遇到Logging?system?failed?to?initialize?using?configuration?from‘classpath:log4問(wèn)題

    springboot3.x版本集成log4j遇到Logging?system?failed?to?initial

    使用Springboot?3.x集成Log4j時(shí)可能會(huì)遇到版本沖突的問(wèn)題,這通??梢酝ㄟ^(guò)檢查Maven依賴(lài)樹(shù)來(lái)識(shí)別,一旦發(fā)現(xiàn)沖突,將Log4j的版本統(tǒng)一更新到最新的兼容版本,例如2.21.1,即可解決問(wèn)題,此方法有效解決了日志打印錯(cuò)誤,是處理類(lèi)似問(wèn)題的一個(gè)實(shí)用參考
    2024-09-09
  • Springboot+Flowable?快速實(shí)現(xiàn)工作流的開(kāi)發(fā)流程

    Springboot+Flowable?快速實(shí)現(xiàn)工作流的開(kāi)發(fā)流程

    這篇文章主要介紹了Springboot+Flowable?快速實(shí)現(xiàn)工作流的開(kāi)發(fā)流程,本文通過(guò)實(shí)例代碼圖文相結(jié)合給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2022-02-02
  • Java8的DateTimeFormatter與SimpleDateFormat的區(qū)別詳解

    Java8的DateTimeFormatter與SimpleDateFormat的區(qū)別詳解

    這篇文章主要介紹了Java8的DateTimeFormatter與SimpleDateFormat的區(qū)別詳解,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2021-03-03
  • AspectJ的基本用法

    AspectJ的基本用法

    本文主要介紹了AspectJ的基本用法。具有很好的參考價(jià)值。下面跟著小編一起來(lái)看下吧
    2017-04-04
  • mybatis如何封裝List<String>類(lèi)型屬性

    mybatis如何封裝List<String>類(lèi)型屬性

    這篇文章主要介紹了mybatis如何封裝List<String>類(lèi)型屬性問(wèn)題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2023-12-12
  • JPA添加Pageable實(shí)現(xiàn)翻頁(yè)時(shí)報(bào)錯(cuò)的問(wèn)題

    JPA添加Pageable實(shí)現(xiàn)翻頁(yè)時(shí)報(bào)錯(cuò)的問(wèn)題

    這篇文章主要介紹了解決JPA添加Pageable實(shí)現(xiàn)翻頁(yè)時(shí)報(bào)錯(cuò)的問(wèn)題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2021-09-09
  • 關(guān)于spring中單例Bean引用原型Bean產(chǎn)生的問(wèn)題及解決

    關(guān)于spring中單例Bean引用原型Bean產(chǎn)生的問(wèn)題及解決

    這篇文章主要介紹了關(guān)于spring中單例Bean引用原型Bean產(chǎn)生的問(wèn)題及解決方案,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2022-06-06
  • 詳解Java 微服務(wù)架構(gòu)

    詳解Java 微服務(wù)架構(gòu)

    這篇文章主要介紹了Java 微服務(wù)架構(gòu)的相關(guān)資料,幫助大家更好的理解和使用Java,感興趣的朋友可以了解下
    2021-02-02
  • 一文詳解Java如何實(shí)現(xiàn)自定義注解

    一文詳解Java如何實(shí)現(xiàn)自定義注解

    Java實(shí)現(xiàn)自定義注解其實(shí)很簡(jiǎn)單,跟類(lèi)定義差不多,只是屬性的定義可能跟我們平時(shí)定義的屬性略有不同,這篇文章主要給大家介紹了關(guān)于Java如何實(shí)現(xiàn)自定義注解的相關(guān)資料,需要的朋友可以參考下
    2024-07-07
  • java 中多線(xiàn)程生產(chǎn)者消費(fèi)者問(wèn)題詳細(xì)介紹

    java 中多線(xiàn)程生產(chǎn)者消費(fèi)者問(wèn)題詳細(xì)介紹

    這篇文章主要介紹了java 中多線(xiàn)程生產(chǎn)者消費(fèi)者問(wèn)題詳細(xì)介紹的相關(guān)資料,希望通過(guò)本文能幫助到大家,需要的朋友可以參考下
    2017-09-09

最新評(píng)論