Java 如何在最后7位之前获取子字符串

Java 如何在最后7位之前获取子字符串,java,Java,例如,如果我有一个字符串,它是一个电话号码 19051112222我想要1905 或 9051112222我想要905 我需要它能够在最后7位之前处理任意数量的数字。您可以使用子字符串,从字符串的开头(即位置0)到字符串的长度减去7 它看起来像str.substring(0,str.length()-7) 测试代码: String str = "19051112222"; System.out.println(str.substring(0, str.length() - 7)); st

例如,如果我有一个字符串,它是一个电话号码

19051112222我想要1905

9051112222我想要905


我需要它能够在最后7位之前处理任意数量的数字。

您可以使用
子字符串
,从
字符串的开头(即位置
0
)到
字符串的长度
减去
7

它看起来像
str.substring(0,str.length()-7)

测试代码:

 String str = "19051112222";
 System.out.println(str.substring(0, str.length() - 7));

 str = "9051112222";
 System.out.println(str.substring(0, str.length() - 7)); 
1905
905
 public static String removeFinalSeven(String str) {
     if (str.length() < 7) {
         return ""; //return whatever you want to happen in this scenario
     }
     return str.substring(0, str.length() - 7);
 }
输出:

 String str = "19051112222";
 System.out.println(str.substring(0, str.length() - 7));

 str = "9051112222";
 System.out.println(str.substring(0, str.length() - 7)); 
1905
905
 public static String removeFinalSeven(String str) {
     if (str.length() < 7) {
         return ""; //return whatever you want to happen in this scenario
     }
     return str.substring(0, str.length() - 7);
 }
请注意,如果
字符串
少于
7个
字符,您将获得
StringIndexOutOfBoundsException
,因此如果您认为这是可能的,您应该将此代码转换为一个方法,并检查
if(str.length()<7)

示例方法:

 String str = "19051112222";
 System.out.println(str.substring(0, str.length() - 7));

 str = "9051112222";
 System.out.println(str.substring(0, str.length() - 7)); 
1905
905
 public static String removeFinalSeven(String str) {
     if (str.length() < 7) {
         return ""; //return whatever you want to happen in this scenario
     }
     return str.substring(0, str.length() - 7);
 }
publicstaticstringremovefinalseven(stringstr){
如果(str.length()<7){
return“”;//返回在此场景中希望发生的任何情况
}
返回str.substring(0,str.length()-7);
}

如果字符串长度小于7位怎么办?您是希望出现某种错误情况,还是只返回
”?只要是7位或更多数字,您就可以使用
str.substring(0,str.length()-7)
它总是10位或更多。这是一个电话号码,有一个验证检查,所以它将是10+@Nexevis是的,祝福你的灵魂那是完美的