java判断一个字符串是否以数字开头

Stringstr="30年前";我要判断该字符串是否以数字开头,如果是还要把数字单独提取出来,再赋值到一个新的String变量中,怎么写?谢谢~另外我要把数字部分和中文... String str = "30年前";
我要判断该字符串是否以数字开头,如果是还要把数字单独提取出来,再赋值到一个新的String变量中,怎么写?谢谢~
另外我要把数字部分和中文部分都分解开,分别赋值到新的String变量中。
如:str1 = "30"; str2="年前";
展开
 我来答
antolife
推荐于2017-11-25 · TA获得超过461个赞
知道小有建树答主
回答量:287
采纳率:0%
帮助的人:206万
展开全部
以下是antolife给您的回答,不能保证100%正确,但可给您一个建议.谢谢!

// 正则方式
String content = "30年前";
Pattern pattern = Pattern.compile("^(\\d+)(.*)");
Matcher matcher = pattern.matcher(content);
if (matcher.matches()) {//数字开头
System.out.println(matcher.group(1));// =30
System.out.println(matcher.group(2));// =年前
}

// 简单模式
String source = "30年前";
int indexOfNum = 0;
for (; indexOfNum < source.length(); indexOfNum++) {
if (!Character.isDigit(source.charAt(indexOfNum))) {
break;
}
}
if (indexOfNum != 0) {// 数字开头
System.out.println(source.substring(0, indexOfNum));// =30
System.out.println(source.substring(indexOfNum));// =年前
}

参考资料: 纯手工打造,请珍惜

wzjlovetqy
2012-04-16 · TA获得超过160个赞
知道答主
回答量:64
采纳率:0%
帮助的人:65.2万
展开全部
你把这个方法放进你的类中,调用它就可以
如果你传的不是数字开头的,就得到一个null,否则,它会给你返回一个字符串数组,第0位是数字部分,第[1]处是字符串部分,例如:你传的是"30年前",得到的将是str[0] = "30"; str[1] = "年前"
public String[] getNumberFromString(String srcString){
if ( srcString == null || srcString.charAt(0) < 48 || srcString.chatAt(0) > 57 ) return null;
String numberStr = "";
String stringStr = "";
for ( int i = 0; i < srcString.length(); i ++ ){
if ( srcString.charAt(i) >=48 && srcString.charAt(i) <= 57 ){
numberStr += srcString.charAt(i);
}else{
stringStr = srcString.substring(i); break;
}
}
return new String[]{ numberStr , stringStr };
}
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
冬天水月
2012-04-16
知道答主
回答量:26
采纳率:50%
帮助的人:4.9万
展开全部
String.substring(beg,end);可以截取字符串,你可以一个一个截取出来,然后试着转换成整数与0~9比较,成功就把它转到另一个字符串中,依次进行
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
ant_szc
2012-04-16 · TA获得超过342个赞
知道小有建树答主
回答量:346
采纳率:0%
帮助的人:236万
展开全部
用ascii码
public static boolean isNumeric(String str){
int chr=str.charAt(0);
if(chr<48 || chr>57)
return false;
}
return true;
}

判断一下不久好了呀,如果是数字把数字提取出来""+“‘拼成字符串然后其他一样的做法
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(2)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式