如何从字符串Java中删除符号

时间:2016-04-27 07:30:15

标签: java string

我有一个字符串"00000000800540"。始终是相同长度的字符串。但是可以将零的数量更改为8.相反,8也可以是另一个数字。如何从字符串中获取数字800540?

3 个答案:

答案 0 :(得分:1)

您可以使用:

   givenNumberAsString.replaceFirst("^0+(?!$)", "")

无论你的字符串有多长,这都会有效。

答案 1 :(得分:1)

非正则表达方式:

int i = 0;
while (i < str.length() && str.charAt(i) == '0') ++i;
String withoutLeadingZeros = str.substring(i);

这将修剪所有零,即使该字符串全为零。如果要在这种情况下保留最后一个零,请将while循环保护更改为:

i + 1 < str.length() && str.charAt(i) == '0'

答案 2 :(得分:0)

根据字符串中包含的预期数字的长度,您可以使用Integer.parseInt(**string**)Long.parseLong(**string**)

String st = "00000000800540";
System.out.println(Long.parseLong(st));     // 800540
System.out.println(Integer.parseInt(st));   // 800540