我希望有人可以帮助我,我有以下问题。 我有一个看起来像这样的变量:
var a = "01VENT000KRV010WFEVVV055";
我想要:
将变量的最后3个数字(例如055)作为int
或从变量中删除所有非数字(例如01000010055)作为int
我的想法是:
int sub = Integer.parseInt(a.substring(a.length-3));
或:
int sub = Integer.parseInt(a.replaceAll("[\\D]", ""));
那没有用,所以如果有人能在这里帮助我,我真的很感激 感谢
答案 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();
}