Java:从var中返回一个包含字母和数字的int

时间:2017-02-13 14:45:06

标签: java integer

我希望有人可以帮助我,我有以下问题。 我有一个看起来像这样的变量:

var a = "01VENT000KRV010WFEVVV055";

我想要:

  • 将变量的最后3个数字(例如055)作为int

  • 或从变量中删除所有非数字(例如01000010055)作为int

我的想法是:

int sub = Integer.parseInt(a.substring(a.length-3));

或:

int sub = Integer.parseInt(a.replaceAll("[\\D]", ""));

那没有用,所以如果有人能在这里帮助我,我真的很感激 感谢

1 个答案:

答案 0 :(得分:0)

  

注意所有方法都可能返回一个空字符串。

    public static void main(String[] args) {
        // TODO code application logic here

        String a = "01VENT000KRV010WFEVVV055";
        System.out.println(removeChars(a));
        System.out.println(removeDigits(a));
        System.out.println(getLastThreeChars(a));
    }


    //This method removes Characters from a string and returns a String of numbers
    static String removeChars(String t)
    {
        String tempString = "";

        for(int i = 0; i < t.length(); i++)
        {            
            if(Character.isDigit(t.charAt(i)))
            {
                tempString += t.charAt(i);
            }
        }

        return tempString;
    }

    //This method removes Digits from a string and returns only characters
    static String removeDigits(String t)
    {
        String tempString = "";

        for(int i = 0; i < t.length(); i++)
        {            
            if(Character.isAlphabetic(t.charAt(i)))
            {
                tempString += t.charAt(i);
            }
        }

        return tempString;
    }

    //This methods prints the last 3 char of a string
    static String getLastThreeChars(String t)
    {
        StringBuilder tempString = new StringBuilder();

        for(int i = t.length() - 1; i > t.length() - 1 - 3; i--)
        {
            tempString.append(t.charAt(i));
        }

        return tempString.reverse().toString();
    }

enter image description here