Подсчитать количество чисел в тестовом файле - 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+")
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д