.NET 4.x Поправить регулярное выражение - C#
Формулировка задачи:
Здравствуйте, помогите пожалуйста разобраться, где ошибка в выражении:
Выражение должно разбирать строки вида (слово_1пробел_положительноеЧисло):
И не разбирать такие:
Проблема с "Word 123". Сколько пробелов не вводи, всеравно пропускает.
new Regex(@"^(?<word>.+)\s{1}(?<number>[0-9]*)$");
"123 123" "Dog 7" "Cat 2" "People 100"
"Word 123" //тут проблема "Word1" " Word -1" "Word -1" "Word 1 " "Word Word"
Решение задачи: «.NET 4.x Поправить регулярное выражение»
textual
Листинг программы
using System; using System.Text.RegularExpressions; internal class Program { private static void Main(string[] args) { Regex reg = new Regex(@"^(?<string>\S+)\s(?<Number>\d+)$"); string[] str = { "123 123", "Dog 7", "Cat 2", "People 100", "Word 123", "Word1", " Word -1", "Word -1", "Word 1 ", "Word Word" }; foreach (var s in str) { var match = reg.Match(s); Console.WriteLine(match.Groups["string"]+" "+match.Groups["Number"]); } } }
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д