Регулярные выражения. Обратная ссылка в выражении. Как сделать, чтобы искались только отдельные слова? - C#
Формулировка задачи:
using System; using System.Text.RegularExpressions; namespace ConsoleApplication1 { class Program { static string text = "the the rocket. man manager man spaderman " + "if if i am newbie, you are professional professsional"; static void Main(string[] args) { // "\1" это обратная ссылка на выражение ([A-Za-z]+). То есть ссылается на //найденный текст, на точно такой же, который был найден string pattern = @"([A-Za-z]+)\s\1"; Regex regex = new Regex(pattern); Match match = regex.Match(text); MatchCollection matchColl = regex.Matches(text); foreach (Group group in matchColl) { Console.WriteLine(group.ToString()); } Console.ReadKey(); } } }
string pattern = @"([A-Za-z]+\s+)\1";
В результате работы этой программы на экран будет выведено:
the the
man man
if if
the the
if if
Решение задачи: «Регулярные выражения. Обратная ссылка в выражении. Как сделать, чтобы искались только отдельные слова?»
textual
Листинг программы
@"([A-Za-z]+)\s\1\b"
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д