
如果就是这个字符串,或者这个格式的字符串的话,还是很方便的。
可以用find函数,找到y的位置,然后将前面的字符串切出来,得到"2"
然后用parseInt函数得到字符串代表的数值。
同理,找到=和x的位置,然后中间的切出来;找到+的位置,后面的切出来,
如果长度是0,那么说明系数是1,否则,用parseInt函数解析出数值。
import javaioBufferedReader;
import javaioInputStreamReader;
import javautilArrays;
public class NumberSplit {
public StringBuffer getString(String str) {
StringBuffer strbuf = new StringBuffer("t");
boolean flag = true;
for (int i = 0; i < strlength(); i++) {
char c = strcharAt(i);
// 判断是否是数字
if (c >= '0'&& c <= '9') {
// 判断和字符串中的数字是否重复
for (int j = 1; j < strbuflength(); j++) {
if (c == strbufcharAt(j)) {
// 如果重复,标志位数值为false,并跳出循环;否则标志位设置为true
flag = false;
break;
} else
flag = true;
}
// 只有在即是数字又不重复的情况下才将改字符拼接到字符串上
if (flag) {
strbufappend(c);
}
}
}
return strbuf;
}
public static void main(String args[]) throws Exception {
Systemoutprintln("请输入一段字符串,并以回车结束");
BufferedReader buf = new BufferedReader(
new InputStreamReader(Systemin));
String str = bufreadLine();
StringBuffer strbuf = new NumberSplit()getString(str);
// 将返回的StringBuffer转换为字符数组
char c[] = strbufdeleteCharAt(0)toString()toCharArray();
// 对字符数组排序
Arrayssort(c);
// 输出字符数组
for (int i = 0; i < strbuflength(); i++) {
Systemoutprint(c[i]);
}
}
import javaioBufferedReader;
import javaioInputStreamReader;
import javautilArrays;
public class NumberSplit {
public StringBuffer getString(String str) {
StringBuffer strbuf = new StringBuffer("t");
boolean flag = true;
for (int i = 0; i < strlength(); i++) {
char c = strcharAt(i);
// 判断是否是数字
if (c >= '0'&& c <= '9') {
// 判断和字符串中的数字是否重复
for (int j = 1; j < strbuflength(); j++) {
if (c == strbufcharAt(j)) {
// 如果重复,标志位数值为false,并跳出循环;否则标志位设置为true
flag = false;
break;
} else
flag = true;
}
// 只有在即是数字又不重复的情况下才将改字符拼接到字符串上
if (flag) {
strbufappend(c);
}
}
}
return strbuf;
}
public static void main(String args[]) throws Exception {
Systemoutprintln("请输入一段字符串,并以回车结束");
BufferedReader buf = new BufferedReader(
new InputStreamReader(Systemin));
String str = bufreadLine();
StringBuffer strbuf = new NumberSplit()getString(str);
// 将返回的StringBuffer转换为字符数组
char c[] = strbufdeleteCharAt(0)toString()toCharArray();
// 对字符数组排序
Arrayssort(c);
// 输出字符数组
for (int i = 0; i < strbuflength(); i++) {
Systemoutprint(c[i]);
}
}
matlab 获取字符串中的数字
str='1999jpg'
A=isstrprop(str,'digit');
B=str(A);
C=str2num(B)
函数功能:
str2num:把字符串转换数值,可以使用str2double来替代str2num。在matlab命令窗口中键入doc str2num或help str2num即可获得该函数的帮助信息。
isstrprop:用于判断是否是数字,是则返回1
以上就是关于如何从一个字符串中提取数字全部的内容,包括:如何从一个字符串中提取数字、java中如何提取字符串中的数字、matlab如何提取字符串中的数字等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)