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

java從字符串中提取數(shù)字的簡單實例

 更新時間:2016年10月26日 10:35:04   投稿:jingxian  
下面小編就為大家?guī)硪黄猨ava從字符串中提取數(shù)字的簡單實例。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧

隨便給你一個含有數(shù)字的字符串,比如:

String s="eert343dfg56756dtry66fggg89dfgf";

那我們?nèi)绾伟哑渲械臄?shù)字提取出來呢?大致有以下幾種方法,正則表達式,集合類,還有就是String類提供的方法。

1 String類提供的方法:

package 測試練習(xí);
import Java.util.*;
public class get_StringNum {


/**
 *2016.10.25
 */

public static void main(String[] args) {
String str = "love23next234csdn3423javaeye";
str=str.trim();
String str2="";
if(str != null && !"".equals(str)){
for(int i=0;i<str.length();i++){
if(str.charAt(i)>=48 && str.charAt(i)<=57){
str2+=str.charAt(i);
}
}

}
System.out.println(str2);
}

}

output:

232343423

這個方法有個明顯的缺點,只能把數(shù)字全部提取到一起,不能分別提取。當(dāng)然也可以改進,有興趣的朋友可以試試。

2 正則表達式

import java.util.*;
import java.util.regex.Matcher;
import java.util.regex.Pattern;
public class get_StringNum {


/**
 *2016.10.25
 */

public static void main(String[] args) {
String a="love23next234csdn3423javaeye";
String regEx="[^0-9]";  
Pattern p = Pattern.compile(regEx);  
Matcher m = p.matcher(a);  
System.out.println( m.replaceAll("").trim());
}

}

output:

232343423

Pattern ,Matcher是java.util.regex軟件包里的兩個類,具體用法大家可以查閱一下api。同樣也不能單個提取數(shù)字。

3 集合類庫

import java.util.*;
import java.util.regex.Matcher;
import java.util.regex.Pattern;
public class get_StringNum {


/**
 *2016.10.25
 */

public static void main(String[] args) {
  String a="love23next234csdn3423javaeye";
List<String> digitList = new ArrayList<String>();
Pattern p = Pattern.compile("[^0-9]");
Matcher m = p.matcher(a);
String result = m.replaceAll("");
for (int i = 0; i < result.length(); i++) {
digitList.add(result.substring(i, i+1));

}
System.out.println(digitList);

}

}

output:

[2, 3, 2, 3, 4, 3, 4, 2, 3]

相同的思路:

import java.util.*;
import java.util.regex.Matcher;
import java.util.regex.Pattern;
public class get_StringNum {


/**
 *2016.10.25
 */

public static void main(String[] args) {
        String a="love23next234csdn3423javaeye";
    List<String> ss = new ArrayList<String>();
    for(String sss:s.replaceAll("[^0-9]", ",").split(",")){
      if (sss.length()>0)
        ss.add(sss);
    }
    System.out.print(ss);


}

}

output:

[2, 3, 2, 3, 4, 3, 4, 2, 3]

很明顯,利用正則表達式我們就可以分別提取數(shù)字了。

另外還有一個利用查閱文檔找出的答案,如下:

/**
 * 從字符串文本中獲得數(shù)字 

*@param
 text 

*@return
 

*/
 

publicstatic
 List<Long>
 getDigit(String text) { 

List<Long>
 digitList =new
 ArrayList<Long>();
 

Pattern p=
 Pattern.compile("(\\d+)");
 

Matcher m=
 p.matcher(text); 

while
 (m.find()) { 

String find=
 m.group(1).toString(); 

digitList.add(Long.valueOf(find)); 

}return
 digitList; 

}

兩個用正則表達式匹配的判斷方法,如下;

// 判斷一個字符串是否都為數(shù)字 
public boolean isDigit(String strNum) { 
  return strNum.matches("[0-9]{1,}"); 
} 
 
// 判斷一個字符串是否都為數(shù)字 
public boolean isDigit(String strNum) { 
  Pattern pattern = Pattern.compile("[0-9]{1,}"); 
  Matcher matcher = pattern.matcher((CharSequence) strNum); 
  return matcher.matches(); 
} 
 
  //截取數(shù)字 
  public String getNumbers(String content) { 
    Pattern pattern = Pattern.compile("\\d+"); 
    Matcher matcher = pattern.matcher(content); 
    while (matcher.find()) { 
      return matcher.group(0); 
    } 
    return ""; 
  } 
 
// 截取非數(shù)字 
public String splitNotNumber(String content) { 
  Pattern pattern = Pattern.compile("\\D+"); 
  Matcher matcher = pattern.matcher(content); 
  while (matcher.find()) { 
    return matcher.group(0); 
  } 
  return ""; 
} 

以上就是小編為大家?guī)淼膉ava從字符串中提取數(shù)字的簡單實例全部內(nèi)容了,希望大家多多支持腳本之家~

相關(guān)文章

  • java編程多線程并發(fā)處理實例解析

    java編程多線程并發(fā)處理實例解析

    這篇文章主要介紹了java編程多線程并發(fā)處理實例解析,分享了相關(guān)代碼示例,小編覺得還是挺不錯的,具有一定借鑒價值,需要的朋友可以參考下
    2018-01-01
  • Java線程池submit阻塞獲取結(jié)果的實現(xiàn)原理詳解

    Java線程池submit阻塞獲取結(jié)果的實現(xiàn)原理詳解

    Java線程池中提交任務(wù)運行,通常使用execute()方法就足夠了。那如果想要實現(xiàn)在主線程中阻塞獲取線程池任務(wù)運行的結(jié)果,該怎么辦呢?本文就來和大家一起討論討論
    2022-10-10
  • SpringBoot2+Netty+WebSocket(netty實現(xiàn)websocket支持URL參數(shù))問題記錄

    SpringBoot2+Netty+WebSocket(netty實現(xiàn)websocket支持URL參數(shù))問題記錄

    Netty?是一個利用?Java?的高級網(wǎng)絡(luò)的能力,隱藏其背后的復(fù)雜性而提供一個易于使用的?API?的客戶端/服務(wù)器框架,這篇文章主要介紹了SpringBoot2+Netty+WebSocket(netty實現(xiàn)websocket,支持URL參數(shù)),需要的朋友可以參考下
    2023-12-12
  • springboot整合kaptcha驗證碼的示例代碼

    springboot整合kaptcha驗證碼的示例代碼

    kaptcha是一個很有用的驗證碼生成工具,本篇文章主要介紹了springboot整合kaptcha驗證碼的示例代碼,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2018-06-06
  • IDEA安裝詳細步驟(多圖預(yù)警)

    IDEA安裝詳細步驟(多圖預(yù)警)

    這篇文章主要介紹了IDEA安裝詳細步驟(多圖預(yù)警),本文通過圖文并茂的形式給大家介紹的非常詳細,對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2020-04-04
  • MAVEN的安裝配置與IDEA整合超詳細教程

    MAVEN的安裝配置與IDEA整合超詳細教程

    這篇文章給大家介紹了MAVEN的安裝,配置與IDEA整合方法,本文給大家介紹的非常詳細,對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,感興趣的朋友跟隨小編一起看看吧
    2021-02-02
  • Java字符串替換的三種方法實際應(yīng)用

    Java字符串替換的三種方法實際應(yīng)用

    這篇文章主要給大家介紹了關(guān)于Java字符串替換的三種方法,replace和replaceAll是JAVA中常用的替換字符的方法,文中通過代碼介紹的非常詳細,需要的朋友可以參考下
    2023-11-11
  • Java?中的靜態(tài)字段和靜態(tài)方法?

    Java?中的靜態(tài)字段和靜態(tài)方法?

    這篇文章主要介紹了Java中的靜態(tài)字段和靜態(tài)方法,文章圍繞Java?靜態(tài)方法展開詳細內(nèi)容,具有一定的參考價值,需要的小伙伴可以參考一下
    2022-03-03
  • @PathVariable 如何自動填充入實例對象中

    @PathVariable 如何自動填充入實例對象中

    這篇文章主要介紹了@PathVariable 實現(xiàn)自動填充入實例對象中的操作,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2021-09-09
  • JAVA線程用法詳解

    JAVA線程用法詳解

    這篇文章主要介紹了JAVA線程用法,配合實例針對Java中線程的開啟、sleep、合并與讓出等進行了較為深入的分析,需要的朋友可以參考下
    2014-08-08

最新評論

三门峡市| 静宁县| 石泉县| 连南| 贡山| 中西区| 罗江县| 五常市| 射阳县| 夏津县| 日喀则市| 郯城县| 永仁县| 修文县| 姜堰市| 冷水江市| 秦皇岛市| 博白县| 兴义市| 宜阳县| 吴川市| 瓮安县| 炎陵县| 普宁市| 平顺县| 邛崃市| 华安县| 嵩明县| 东至县| 永宁县| 花垣县| 南投县| 邹城市| 从江县| 丰县| 曲阳县| 惠来县| 保亭| 古蔺县| 霍林郭勒市| 岑巩县|