例如,如果我有一个电话号码字符串
19051112222 我想要 1905
或
9051112222 我想要 905
我需要它能够处理最后 7 位数字之前的任意位数。
最佳答案
您可以使用substring
并从 String
的开头开始(又名位置 0
)到 String
的长度减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
请注意,如果String
小于7
字符,您将得到 StringIndexOutOfBoundsException
,所以如果您希望这是可能的,您应该将此代码转换为方法并检查 if (str.length() < 7)
.
示例方法:
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);
}
关于java - 如何获取最后7位之前的子字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60344699/