Как с помощью регулярных выражений проверить, что в строке дано число или просто пустой символ в c#
У меня есть строка, которую нужно проверить на корректность. Нужно, чтобы было в строке перед точкой было либо число(количество цифр может быть в пределах от 1 до 3), либо пустая область. Вот пример тех строк, которые должны быть определены как правильные:
string str = "word 10.5 something else";
string str2 = "word .5 something else";
Какое выражение для этого нужно использовать?
Я пробовал такие выражения:
new Regex(@"(*.?)\s\b[\d+\|]\b\.\d*\s");
new Regex(@"(*.?)\b[\s\d+\|\s]\b\.\d*\s");
new Regex(@"(*.?)\s[\d\|]*\.\d*\s");
и некоторые другие, но они не либо не работают, либо работают неправильно.
Ответы (1 шт):
Автор решения: CrazyElf
→ Ссылка
Зачем так сложно? По вашему описанию должно быть достаточно такого:
\s\d{0,3}\.
Проверка на regex101.