首页 新闻 赞助 找找看

从任意字符串中提取数值部分放入数组中?

0
悬赏园豆:5 [已解决问题] 解决于 2014-03-27 22:47

从任意字符串中提取数值部分放入数组中,不能使用类库中的方法,正则表达式等等。

例如:23.3dfa-23-d+.9.8df+5.df0.03。结果为:23.3,-23,9.8,+5,0.03。

绝崖绿色的主页 绝崖绿色 | 初学一级 | 园豆:200
提问于:2014-03-20 14:05
< >
分享
最佳答案
0

把他当成个string类型的字符串 然后遍历这个字符串

定义一个char[] ch={'0','1','2','3','4','5','6','7','8','9','-','+'};

如果字符串中的字符在ch中,继续,如果不是 然后将之前的 拼接 输出

话说:出这题面试人的 tmd真蛋疼 你完全可以摔他一句话 你真tmd有病 然后走人

收获园豆:5
wolfy | 老鸟四级 |园豆:2636 | 2014-03-20 21:28

哎,谁知道这是想考啥呢!

这样做还是有问题啊,如果字符串是++3.3.2dslfk-34-23

绝崖绿色 | 园豆:200 (初学一级) | 2014-03-20 23:02

@晚风victory: 这只能对.+-做特殊处理了

wolfy | 园豆:2636 (老鸟四级) | 2014-03-21 13:00

@wolfy: 是的

绝崖绿色 | 园豆:200 (初学一级) | 2014-03-21 13:02
其他回答(4)
0

 要是-23-12...2.34-3怎么办?

吴瑞祥 | 园豆:29449 (高人七级) | 2014-03-20 14:18

-23,-12,2.34,-3

支持(0) 反对(0) 绝崖绿色 | 园豆:200 (初学一级) | 2014-03-20 16:00
0

我看这得靠眼睛看了,手写吧

开山怪不怪 | 园豆:544 (小虾三级) | 2014-03-20 16:38

我面试的题目,晕

支持(0) 反对(0) 绝崖绿色 | 园豆:200 (初学一级) | 2014-03-20 18:31
0

可以在楼上老兄的基础上用ascii来判断,貌似是只要不是A-Z的码都可以拿走吧。

seaconch | 园豆:4823 (老鸟四级) | 2014-03-24 14:36
0

做了个简单算法
string num;
string[] nums;
int numsLen = 0;

for(i=0; i<str.length; i++){
var ch = str[i];
if(ch < "A" || ch >"z" || "Z"< ch <"a")
num += ch;
else{
nums[numsLen] = num;
numsLen++;
num = "";
}
}

Mr 88 | 园豆:238 (菜鸟二级) | 2014-03-24 17:49
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册