日期:2014-05-18 浏览次数:20896 次
using System.Text.RegularExpressions;
string test = "fdas79fs-afs7df76f6dsa799fd";
int count = Regex.Matches(test, @"\d").Count;
Console.WriteLine("字符串中数字的个数为:{0}", count);
Console.WriteLine("连续整数分别为:");
MatchCollection mc = Regex.Matches(test, @"\d+");
foreach (Match m in mc)
{
Console.WriteLine(m.Value);
}
Console.Read();
------解决方案--------------------
菜鸟照2楼的谢谢看看:
using System;
using System.Collections.Generic;
using System.Text;
using System.Text.RegularExpressions;
using System.Collections;
namespace IsInt
{
class Program
{
static void Main(string[] args)
{
string test = "fdas79fs-afs7df76f6dsa799fd";
ArrayList integer;
int No;
if (IsInteger(test, out No, out integer))
{
Console.WriteLine("The Integer Number is:"+No.ToString());
Console.Write("And the Interger are:");
StringBuilder sb = new StringBuilder();
foreach (object b in integer)
{
sb.Append(b.ToString() + ",");
}
sb.Remove(sb.Length - 1, 1);
Console.WriteLine(sb.ToString());
}
else
{
Console.WriteLine("No Integer!");
}
}
#region 判断是否含有数字
/// <summary>
/// 判断是否含有数字
/// </summary>
/// <param name="str">要判断的字符串</param>
/// <param name="number">输出数字个数</param>
/// <param name="integer">输出数字集合</param>
/// <returns>是否有数字</returns>
public static bool IsInteger(string str, out int number,out ArrayList integer)
{
bool IsInt;
if (Regex.IsMatch(str, @"\d"))
{
IsInt = true;
number = Regex.Matches(str, @"\d+").Count;
integer = new ArrayList();
MatchCollection mc = Regex.Matches(str, @"\d+");
foreach (Match b in mc)
{
integer.Add(b);
}
}
else
{
number = 0;
IsInt = false;
integer = null;
}
return IsInt;
}
#endregion
}
}
/*
The Integer Number is:5
And the Interger are:79,7,76,6,799
请按任意键继续. . .
*/