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

Java使用正則獲取括號里面的內(nèi)容

 更新時(shí)間:2023年05月26日 10:41:48   作者:RC_D  
這篇文章主要介紹了Java使用正則獲取括號里面的內(nèi)容問題,具有很好的參考價(jià)值,希望對大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教

Java正則獲取括號里面的內(nèi)容

其實(shí)嚴(yán)格來說是叫獲取組里面的內(nèi)容

先說核心,Matcher的方法group()可以取出括號里面的內(nèi)容,0是取出所有匹配字符串,即:不會按照組這個(gè)說法來匹配,之后就可以依次取出我們用括號括起來的內(nèi)容。

例子:

? ? // 創(chuàng)建 Pattern 對象
?? ?Pattern r = Pattern.compile("xx[\s,\S]+?()ss")
? ? // 現(xiàn)在創(chuàng)建 matcher 對象
? ? Matcher m = r.matcher("你的字符串");
?? ?//獲取括號里面的內(nèi)容
?? ?m.group(1);

Java對字符串的正則

? ? //JS數(shù)據(jù)爬取
? ? //獲取當(dāng)前頁面的核心列表
? ? String s = page.getHtml().regex(JSConstants.kernelPattern).toString();
? ? //獲取時(shí)間、標(biāo)題和鏈接
? ? String pattern = JSConstants.supplementPattern;
? ? // 創(chuàng)建 Pattern 對象
? ? Pattern r = Pattern.compile(pattern);
? ? // 現(xiàn)在創(chuàng)建 matcher 對象
? ? Matcher m = r.matcher(s);
? ? //找出匹配項(xiàng)中的全部鏈接
? ? extracted(m);
? ? //提出數(shù)據(jù)中的所有鏈接
? ? private void extracted(Matcher m) {
? ? ? ? while (m.find()) {
? ? ? ? ? ? IndexPage indexPage = new IndexPage();
? ? ? ? ? ? Date date = new Date();
? ? ? ? ? ? String link = m.group(1);
? ? ? ? ? ? String title = m.group(2);
? ? ? ? ? ? String time = m.group(3);
? ? ? ? ? ? try {
? ? ? ? ? ? ? ? date = new SimpleDateFormat("yyyy-MM-dd").parse(time);
? ? ? ? ? ? ? ? System.out.println(date);
? ? ? ? ? ? } catch (ParseException e) {
? ? ? ? ? ? ? ? e.printStackTrace();
? ? ? ? ? ? }
? ? ? ? ? ? indexPage.setTime(date);
? ? ? ? ? ? indexPage.setTitle(title);
? ? ? ? ? ? indexPage.setLink("你的網(wǎng)址" + link);
? ? ? ? ? ? indexPageList.add(indexPage);
? ? ? ? }
? ? }

核心代碼其實(shí)不多。

  • 獲取字符串str。
  • 聲明一個(gè)Pattern對象,調(diào)用其compile靜態(tài)方法,獲取一個(gè)正常的統(tǒng)配符對象r。
  • 通過r的matcher()方法,給它我們的字符串str,即r.matcher(str),獲得一個(gè)matcher對象m
  • 最后,就可以通過matcher對象取出我們想要的數(shù)據(jù),取出組的話,要使用m的方法group(),0是取出所有匹配字符串,即不會按照組這個(gè)說法來匹配,之后就可以依次取出我們用括號括起來的內(nèi)容。

Java正則獲取括號內(nèi)的數(shù)據(jù)與排除括號內(nèi)的數(shù)據(jù)

正則獲取括號內(nèi)的數(shù)據(jù)

/**
?? ? * 獲取指定字符串中括號內(nèi)的內(nèi)容,返回字符串?dāng)?shù)組
?? ? * @param content
?? ? * @return
?? ? */
?? ?public String[] getBracketContent(String content){
?? ??? ?String [] arr = new String[0];
?? ??? ?Pattern p = Pattern.compile("(?<=\\()[^\\)]+");
?? ??? ?Matcher m = p.matcher(content);
?? ??? ?while(m.find()){
?? ??? ??? ?arr = Arrays.copyOf(arr,arr.length+1);
?? ??? ??? ?arr[arr.length-1]=m.group();
?? ??? ?}
?? ??? ?return arr;
?? ?}

排除括號及括號內(nèi)的數(shù)據(jù)

/**
?? ? * 排除括號及括號內(nèi)的數(shù)據(jù)
?? ? * @param content
?? ? * @return
?? ? */
?? ?public String getWord(String content){
?? ??? ?return content.replaceAll("[\\[][^\\[\\]]+[\\]]|[\\(][^\\(\\)]+[\\)]", "");
?? ?}

總結(jié)

以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。

相關(guān)文章

  • Java中的匿名對象定義與用法實(shí)例分析

    Java中的匿名對象定義與用法實(shí)例分析

    這篇文章主要介紹了Java中的匿名對象定義與用法,結(jié)合實(shí)例形式分析了java匿名對象的概念、原理、定義與相關(guān)使用注意事項(xiàng),需要的朋友可以參考下
    2019-08-08
  • 詳解使用Mybatis-plus + velocity模板生成自定義的代碼

    詳解使用Mybatis-plus + velocity模板生成自定義的代碼

    這篇文章主要介紹了詳解使用Mybatis-plus + velocity模板生成自定義的代碼,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2021-03-03
  • java優(yōu)先隊(duì)列PriorityQueue中Comparator的用法詳解

    java優(yōu)先隊(duì)列PriorityQueue中Comparator的用法詳解

    這篇文章主要介紹了java優(yōu)先隊(duì)列PriorityQueue中Comparator的用法詳解,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2020-02-02
  • vscode 配置java環(huán)境并調(diào)試運(yùn)行的詳細(xì)過程

    vscode 配置java環(huán)境并調(diào)試運(yùn)行的詳細(xì)過程

    這篇文章主要介紹了vscode 配置java環(huán)境并調(diào)試運(yùn)行的詳細(xì)過程,本文給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2021-05-05
  • 基于idea Maven中的redis配置使用詳解

    基于idea Maven中的redis配置使用詳解

    這篇文章主要介紹了基于idea Maven中的redis配置使用,包括一些配置文件需要的內(nèi)容,本文通過實(shí)例代碼給大家介紹的非常詳細(xì),需要的朋友可以參考下
    2021-07-07
  • Java中MessageFormat的使用詳解

    Java中MessageFormat的使用詳解

    本文主要介紹了Java中MessageFormat的使用詳解,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2022-06-06
  • jpa實(shí)體@ManyToOne @OneToMany無限遞歸方式

    jpa實(shí)體@ManyToOne @OneToMany無限遞歸方式

    這篇文章主要介紹了jpa實(shí)體@ManyToOne @OneToMany無限遞歸方式,具有很好的參考價(jià)值,希望對大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2021-10-10
  • Java如何跳出當(dāng)前多重循環(huán)你知道嗎

    Java如何跳出當(dāng)前多重循環(huán)你知道嗎

    這篇文章主要為大家介紹了Java跳出當(dāng)前多重循環(huán),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下,希望能夠給你帶來幫助
    2022-01-01
  • [Spring MVC] -簡單表單提交實(shí)例

    [Spring MVC] -簡單表單提交實(shí)例

    本篇文章主要介紹了[Spring MVC] -簡單表單提交實(shí)例,小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。
    2016-12-12
  • mybatis攔截器實(shí)現(xiàn)通用權(quán)限字段添加的方法

    mybatis攔截器實(shí)現(xiàn)通用權(quán)限字段添加的方法

    這篇文章主要給大家介紹了關(guān)于mybatis攔截器實(shí)現(xiàn)通用權(quán)限字段添加的相關(guān)資料,文中通過示例代碼介紹的非常詳細(xì),對大家學(xué)習(xí)或者使用mybatis具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面來一起學(xué)習(xí)學(xué)習(xí)吧
    2019-09-09

最新評論