黑马程序员技术交流社区
标题:
从字符串中筛选出所有的数字
[打印本页]
作者:
liuyinglong
时间:
2013-11-5 03:30
标题:
从字符串中筛选出所有的数字
如果从字符串中筛选出所有的数字,有那些方法可以实现啊,想了好几个代码都不是最精简的,有人说用正则,不过现在还没有学习正则,不用正则的话怎样最简单最快速呢?
作者:
夢醒了⊙﹏⊙b心
时间:
2013-11-5 09:17
亲 可以考虑一下tryparse 循环判断 tryparse 有true和false两个值 为true就是数字 那么你就提取出来
作者:
hourglass
时间:
2013-11-5 09:24
循环遍历字符串,判断每个字符是否大于'0'小于'9',不用转换类型,直接比较字符大小即可。
作者:
凤凰涅槃
时间:
2013-11-5 09:28
不知道下面这个方法是不是最简单的,分享一下大家看看吧。。。
string str = "abc1d2e3f4j5k66pp";
char[] chars = str.ToCharArray();
int digit = 0;
for (int i = 0; i < chars.Length; i++)
{
if (chars[i] >= '0' && chars[i] <= '9')
{
digit++;
}
}
Console.WriteLine(digit);//运行结果:7
Console.ReadKey();
复制代码
作者:
liuyinglong
时间:
2013-11-5 17:01
凤凰涅槃 发表于 2013-11-5 09:28
不知道下面这个方法是不是最简单的,分享一下大家看看吧。。。
我是要找到到有哪些数字 不是获取到数字的个数 不过可以从你这个上面改进下 把获取到的加入进集合里
作者:
何俞平
时间:
2013-11-5 17:30
//先将字符串转换成字符数组
string str = "abc1d2e3f4j5k66pp";
char[] chs = str.ToCharArray();
//声明一个list<char>类型的泛型集合
List<char> list = new List<char> { '0', '1', '2', '3', '4', '5', '6', '7', '8', '9' };
//z逐个判断数组chs的元素是否在集合中,是就输出,不是就不输出
for (int i = 0; i < chs.Length; i++)
{
if (list.Contains(chs[i])) //集合中有chs[i],chs[i]是数字,输出
{
Console.Write(chs[i] + "\t");
}
}
Console.ReadKey();
作者:
SunshineGirl
时间:
2013-11-11 16:51
亲,有同学给你回答问题了,要设置成已解决呀,这样才能加分
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2