java提取字符串中數(shù)字string以及獲取字符串中的整數(shù)或小數(shù)
方法一:提取字符串中的數(shù)字
// 提取字符串中的數(shù)字 public static String extractNumbers(String input) { return input.replaceAll("[^0-9]", ""); }
方法二:獲取字符串中的整數(shù)或小數(shù)
public static String getNumber(String str) { if (Func.isNotEmpty(str)) { String pReg = "(\\d+\\.\\d+)"; // 控制正則表達式的匹配行為的參數(shù)(小數(shù)) Pattern p = Pattern.compile(pReg); //Matcher類的構(gòu)造方法也是私有的,不能隨意創(chuàng)建,只能通過Pattern.matcher(CharSequence input)方法得到該類的實例. Matcher m = p.matcher(str); //m.find用來判斷該字符串中是否含有與"(\\d+\\.\\d+)"相匹配的子串 if (m.find()) { //如果有相匹配的,則判斷是否為null操作 //group()中的參數(shù):0表示匹配整個正則,1表示匹配第一個括號的正則,2表示匹配第二個正則,在這只有一個括號,即1和0是一樣的 str = m.group(1) == null ? "" : m.group(1); } else { //如果匹配不到小數(shù),就進行整數(shù)匹配 pReg = "(\\d+)"; p = Pattern.compile(pReg); m = p.matcher(str); if (m.find()) { //如果有整數(shù)相匹配 str = m.group(1) == null ? "" : m.group(1); } else { //如果沒有小數(shù)和整數(shù)相匹配,即字符串中沒有整數(shù)和小數(shù),就設(shè)為空 str = ""; } } return str; } return null; }
補充知識:java字符串中提取數(shù)字非正則表達式方法
使用Java中的Character類中的isDigit()方法來判斷當前字符是否為數(shù)字,并在字符串中進行遍歷。
public class ExtractNumbersFromString { public static void main(String[] args) { String str = "有12只貓和13只狗。"; StringBuilder sb = new StringBuilder(); for (char c : str.toCharArray()) { if (Character.isDigit(c)) { sb.append(c); } } System.out.println(sb.toString()); } }
運行上述代碼,即可從字符串中提取數(shù)字并輸出。
總結(jié)
到此這篇關(guān)于java提取字符串中數(shù)字string以及獲取字符串中的整數(shù)或小數(shù)的文章就介紹到這了,更多相關(guān)java提取字符串數(shù)字內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
阿里規(guī)范:為何boolean類型變量命名禁用is開頭
這篇文章主要給大家介紹了關(guān)于阿里規(guī)范:為何boolean類型變量命名禁用is開頭的相關(guān)資料,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2020-08-08關(guān)于IDEA關(guān)聯(lián)數(shù)據(jù)庫的問題
這篇文章主要介紹了IDEA關(guān)聯(lián)數(shù)據(jù)庫的相關(guān)知識,本文通過圖文并茂的形式給大家介紹的非常詳細,對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下2021-03-03elasticsearch+logstash并使用java代碼實現(xiàn)日志檢索
這篇文章主要介紹了elasticsearch+logstash并使用java代碼實現(xiàn)日志檢索,本文給大家介紹的非常詳細,對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下2021-02-02Spring Cloud Gateway(讀取、修改 Request Body)的操作
這篇文章主要介紹了Spring Cloud Gateway(讀取、修改 Request Body)的操作,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2020-12-12Spring Boot 2.x基礎(chǔ)教程之使用@Scheduled實現(xiàn)定時任務(wù)的方法
在Spring Boot中編寫定時任務(wù)是非常簡單的事,下面通過實例介紹如何在Spring Boot中創(chuàng)建定時任務(wù),實現(xiàn)每過5秒輸出一個當前時間,感興趣的朋友跟隨小編一起看看吧2021-07-07