Вывести на экран все адреса web-сайтов из строки с помощью регулярного выражения - C#
Формулировка задачи:
Дана строка, в которой содержится осмысленное текстовое сообщение. Слова
сообщения разделяются пробелами и знаками препинания.Выведите на экран все адреса web-сайтов, содержащиеся в сообщении.
Для ввода нескольких строк можно использовать следующий фрагмент
программы
// Ввод данных string text = ""; // Исходный текст из нескольких строк Console.WriteLine("Введите строки. Пустая строка - конец ввода!"); string st = Console.ReadLine(); // st - текущая строка text while (st != "") // Пока st не пуста { text += "\n" + st; st = Console.ReadLine(); }
Решение задачи: «Вывести на экран все адреса web-сайтов из строки с помощью регулярного выражения»
textual
Листинг программы
using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; using System.Text.RegularExpressions; namespace ConsoleApplication1 { class Program { static void Main(string[] args) { // Ввод данных string text = ""; // Исходный текст из нескольких строк Console.WriteLine("Введите строки. Пустая строка - конец ввода!"); string st = Console.ReadLine(); // st - текущая строка text while (st != "") // Пока st не пуста { text += "\n" + st; st = Console.ReadLine(); } string pattern = @"((https?|ftp)\:\/\/)?([a-z0-9]{1})((\.[a-z0-9-])|([a-z0-9-]))*\.([a-z]{2,6})(\/?)"; Regex newReg = new Regex(pattern); MatchCollection matches = newReg.Matches(text); foreach(Match mat in matches) { Console.WriteLine("Значение найденного объекта {0}",mat.Value); } Console.WriteLine("Число найденных совпадений{0}",matches.Count); Console.ReadLine(); } } }
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д