Подсчитать количество чисел в тестовом файле - C#
Формулировка задачи:
Здравствуйте. (файл для теста прилагается) Делал в виндоус форм, используя для поиска регулярные выражения. Мне предлагали парсить , но я так с этим и не разобрался, вообщем вот последовательность моих размышлений : Я выбираю файл через кнопку (используя openFileDialog1), далее считываю то, что в файле в строку, затем создаю регулярное выражение (по примеру из MSDN), разбиваю строку с помощью сплита и пытаюсь посчитать кол-во чисел. Почему-то выдаёт 0.... без сплита выдает примерно 80 000(так как считает цифры).... помогите понять, что я делаю не так (тест должен выдавать +- 13к чисел).
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
using System.IO;
using System.Text.RegularExpressions;
namespace Laba_2
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
private void button1_Click(object sender, EventArgs e)
{
int WordCount = 0;
openFileDialog1.ShowDialog();
string fileName = openFileDialog1.FileName;
FileStream stream = File.Open(fileName, FileMode.Open, FileAccess.Read);
if (stream != null)
{
StreamReader reader = new StreamReader(stream);
string text = reader.ReadToEnd();
string number = @"/d";//шаблон регулярного выражения
string [] mas = text.Split(new Char[] { ',', '.', ' ' });
Regex re = new Regex(number);
foreach (var i in mas)
{
Match m = re.Match(text);//каждое слово
m = m.NextMatch();
while (m.Success)
{
WordCount++;
}
}
label1.Text = WordCount.ToString();
stream.Close();
}
}
}
}Решение задачи: «Подсчитать количество чисел в тестовом файле»
textual
Листинг программы
if (Regex.IsMatch(array[i]), @"\d+")