С помощью регулярных выражений вывести из файла слова, начинающиеся с цифр - C#
Формулировка задачи:
Люди добрые!Бьюсь уже полдня над,казалось бы мне,простой ошибкой.
По сабжу : нужно с помощью регулярных выражений вывести из файла слова,начинающиеся с цифр.Написал программу,но выводит только первое,очень прошу помощи.
private void button1_Click(object sender, EventArgs e) { if (openFileDialog1.ShowDialog() == DialogResult.OK) { StreamReader f = new StreamReader(openFileDialog1.FileName); String pattern = @"\b[0-9]{0,10}\w"; String s; Regex r = new Regex(pattern); while ((s = f.ReadLine()) != null) { Match m = r.Match(s); while (m.Success) { m = m.NextMatch(); richTextBox1.Text = Convert.ToString(r.Match(s).Value + "\n\n"); } } f.Close(); } }
Решение задачи: «С помощью регулярных выражений вывести из файла слова, начинающиеся с цифр»
textual
Листинг программы
using System.IO; using System.Linq; using System.Text.RegularExpressions; using System.Windows.Forms; namespace WindowsFormsApplication293 { public partial class Form1 : Form { private RichTextBox tb; public Form1() { InitializeComponent(); var bt = new Button {Parent = this}; tb = new RichTextBox {Parent = this, Top = 100}; bt.Click += delegate { OpenFile(); }; } private void OpenFile() { var ofd = new OpenFileDialog {Filter = "Text|*.txt"}; if(ofd.ShowDialog() == DialogResult.OK) { var text = File.ReadAllText(ofd.FileName); var words = Regex.Matches(text, @"[0-9]\w*").OfType<Match>().Select(m => m.Value).ToArray(); tb.Text = string.Join("\r\n", words); } } } }
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д