最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Java正則表達(dá)式的替換和分組功能

 更新時(shí)間:2020年09月02日 10:35:40   作者:Anthony_tester  
這篇文章主要給大家介紹了關(guān)于Java正則表達(dá)式的替換和分組功能的相關(guān)資料,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧

前言

這篇來學(xué)習(xí)正則表達(dá)式的替換和分組功能,替換很好理解,分組有點(diǎn)復(fù)雜,特別是如何寫有效的分組的正則表達(dá)式。這篇通過幾個(gè)練習(xí),簡(jiǎn)單了解下替換和分組功能。

1.替換功能

在String類有一個(gè)替換功能的方法,結(jié)合正則表達(dá)式去實(shí)現(xiàn)替換,下面是replaceAll()方法的舉例。

package regex;
 
public class Demo1_Regex {
	
	public static void main(String[] args) {
		String str = "wo1shi2zhong3guo4ren";
		//需要替換得到 wo shi zhong guo ren
		//寫一個(gè)正則,用空字符替換原字符串的任意數(shù)字
		String regex = "\\d"; // \d表示任意數(shù)字
		
		String target = str.replaceAll(regex, " ");
		System.out.println(target);
	}
 
}

2.分組功能

先來看看什么是分組,在API 中Pattern這個(gè)類介紹是這樣描述的:

捕獲組可以通過從左到右計(jì)算其開括號(hào)來編號(hào)。例如,在表達(dá)式 ((A)(B(C))) 中,存在四個(gè)這樣的組:

1    

((A)(B(C)))

2    

(A)

3    

(B(C))

4    

(C)

我們可以根據(jù)數(shù)多少個(gè)左括號(hào)來確定有多少個(gè)組。

下面來代碼舉例分組的正則表達(dá)式用法。

package regex;
 
public class Demo1_Regex {
	
	public static void main(String[] args) {
		// 1疊詞:快快樂樂,高高高興興
		// 判斷字符串是否是上面的疊詞規(guī)則
		String regex = "(.)\\1(.)\\2"; // 這個(gè)正則表達(dá)式表示 快快樂樂這樣的疊詞
		// 上面(.)表示一個(gè)分組,里面.表示任意字符,\\1表示組1又出現(xiàn)了一次,\\2表示組2又出現(xiàn)了一次
		System.out.println("快快樂樂".matches(regex));
		System.out.println("快樂快樂".matches(regex));
		System.out.println("高高興興".matches(regex));
		System.out.println("快樂樂樂".matches(regex));
	}
 
}

那么如何寫“快樂快樂”這樣疊詞的正則表達(dá)式呢。這么去分析一下,字符串“快樂快樂”,可以認(rèn)為“快樂”這個(gè)組又出現(xiàn)了一次,結(jié)合上面代碼提到的知識(shí),我們應(yīng)該這樣寫。

package regex;
 
public class Demo1_Regex {
	
	public static void main(String[] args) {
		// 1疊詞:快樂快樂
		String regex = "(..)\\1"; 
		System.out.println("快快樂樂".matches(regex));
		System.out.println("快樂快樂".matches(regex));
	}
 
}

練習(xí)1:按照疊詞進(jìn)行切割

請(qǐng)按照疊詞進(jìn)行切割“sdqqfgkkkhjppppdk”

package regex;
 
public class Demo1_Split {
 
	public static void main(String[] args) {
		String st = "sdqqfgkkkhjppppkl"; 
		String[] arr = st.split("(.)\\1+");
		
		for (int i = 0; i < arr.length; i++) {
			System.out.println(arr[i]);
		}
	}
}

輸出

sd

fg

hj

kl

總結(jié)

到此這篇關(guān)于Java正則表達(dá)式的替換和分組功能的文章就介紹到這了,更多相關(guān)Java正則的替換和分組內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • Java 二分查找的實(shí)現(xiàn)及圖例解析

    Java 二分查找的實(shí)現(xiàn)及圖例解析

    這篇文章主要介紹了Java 二分查找的實(shí)現(xiàn),幫助大家更好的理解和使用Java,感興趣的朋友可以了解下
    2020-12-12
  • Netty學(xué)習(xí)教程之Netty與Marshalling結(jié)合發(fā)送對(duì)象

    Netty學(xué)習(xí)教程之Netty與Marshalling結(jié)合發(fā)送對(duì)象

    Netty是由JBOSS提供的一個(gè)Java開源框架,之前已經(jīng)給大家簡(jiǎn)單介紹了一些基礎(chǔ)與使用,下面這篇文章主要給大家介紹了關(guān)于Netty與Marshalling結(jié)合發(fā)送對(duì)象的相關(guān)資料,需要的朋友可以參考借鑒,下面來一起看看吧。
    2017-05-05
  • 深入淺析springsecurity入門登錄授權(quán)

    深入淺析springsecurity入門登錄授權(quán)

    SpringSecurity為我們提供了基于注解的權(quán)限控制方案,這也是我們項(xiàng)目中主要采用的方式,我們可以使用注解去指定訪問對(duì)應(yīng)的資源所需的權(quán)限,這篇文章主要介紹了springsecurity入門登錄授權(quán),需要的朋友可以參考下
    2024-05-05
  • Java中的訪問修飾符詳細(xì)解析

    Java中的訪問修飾符詳細(xì)解析

    以下是對(duì)Java中的訪問修飾符進(jìn)行了詳細(xì)的分析介紹,需要的朋友可以過來參考下
    2013-09-09
  • Java如何實(shí)現(xiàn)圖像的卷積效果

    Java如何實(shí)現(xiàn)圖像的卷積效果

    這篇文章主要介紹了Java如何實(shí)現(xiàn)圖像的卷積效果問題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2024-03-03
  • 教你一步解決java.io.FileNotFoundException:找不到文件異常

    教你一步解決java.io.FileNotFoundException:找不到文件異常

    這篇文章主要給大家介紹了關(guān)于如何一步解決java.io.FileNotFoundException:找不到文件異常的相關(guān)資料,文中通過圖文以及代碼介紹的非常詳細(xì),需要的朋友可以參考下
    2024-01-01
  • 使用SpringBoot的CommandLineRunner遇到的坑及解決

    使用SpringBoot的CommandLineRunner遇到的坑及解決

    這篇文章主要介紹了使用SpringBoot的CommandLineRunner遇到的坑及解決方案,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2023-02-02
  • Lombok在idea中的使用教程

    Lombok在idea中的使用教程

    Lombok是一個(gè)可以通過簡(jiǎn)單的注解形式,來幫助我們簡(jiǎn)化消除一些必須有但顯得很臃腫(如果getter、setter方法)的Java代碼的工具,通過使用對(duì)應(yīng)的注解,可以在編譯源碼的時(shí)候生成對(duì)應(yīng)的方法,這篇文章主要介紹了Lombok在idea中的使用,需要的朋友可以參考下
    2023-03-03
  • java String源碼和String常量池的全面解析

    java String源碼和String常量池的全面解析

    下面小編就為大家分享一篇java String源碼和String常量池的全面解析,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧
    2017-12-12
  • Spring Security賬戶與密碼驗(yàn)證實(shí)現(xiàn)過程

    Spring Security賬戶與密碼驗(yàn)證實(shí)現(xiàn)過程

    這篇文章主要介紹了Spring Security賬戶與密碼驗(yàn)證實(shí)現(xiàn)過程,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)吧
    2023-03-03

最新評(píng)論

宜丰县| 宜昌市| 和平县| 定日县| 沙河市| 和平区| 肥乡县| 斗六市| 清镇市| 巩义市| 鄂尔多斯市| 天长市| 弋阳县| 余江县| 视频| 奎屯市| 双流县| 枣阳市| 四平市| 油尖旺区| 木里| 织金县| 内乡县| 高雄市| 宜春市| 高碑店市| 米泉市| 宁津县| 关岭| 新建县| 昭觉县| 阳高县| 应城市| 宜良县| 新疆| 栖霞市| 壤塘县| 岢岚县| 赣榆县| 得荣县| 仁怀市|