簡體   English   中英

從包含字母和數字的字符串中提取所有數字

[英]Extract all the numbers from a string with both letters and numbers

我在分配從字符串中提取數字時遇到了麻煩。 我必須制作一個新的 integer ,其中只有一個字符串中的數字。 一個例子是:

弦軸承 = 'N30W';

然后我將有一個 integer 變量,該變量將 output '30' 截至目前,我已經嘗試過:

  //digitsOfBearing = Integer.parseInt(bearing.replaceAll("[^0-9]", ""));
  //digitsOfBearing = Integer.parseInt(bearing.substring(1, bearing.length()-1));
  //digitsOfBearing = bearing.replaceAll("\\D+","");

但是我所有的結果都以錯誤結束:

線程“主”java.lang.StringIndexOutOfBoundsException 中的異常:字符串索引超出范圍:-2

謝謝

這會做的事情。

public static void main(String[] args) {
    String str = "1fnvkk14718jafds";
    String digits = getDigits(str);
    long number = Long.parseLong(digits);
    System.out.println(number);
}

private static String getDigits(String str) {
    StringBuilder stringBuilder = new StringBuilder();
    for (char c : str.toCharArray()) {
        if (Character.isDigit(c)) {
            stringBuilder.append(c);
        }
    }
    return stringBuilder.toString();
}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM