Member 14370529 Ответов: 1

А как же я?.. Проверьте поля ввода longtude и latitude, чтобы убедиться, что введен правильный формат


Я хочу проверить поля ввода longtude и latitude, чтобы убедиться, что введен правильный формат

Входные данные, которые должны совпадать
27⁰33,04.24'' S 28⁰50,24.18'' E


Что я уже пробовал:

Regex regex = new Regex(@"^[-+]?([1-8]?\d(\.\d+)?|90(\.0+)?),\s*[-+]?(180(\.0+)?|((1[0-7]\d)|([1-9]?\d))(\.\d+)?)$");


           if (!regex.IsMatch(latitude))
           {
               JQGrid1.ShowEditValidationMessage("Ivalid latitude");
           }

Patrice T

В чем проблема с этим кодом ?

Member 14370529

когда регулярное выражение.IsMatch(широта) == true
он все еще говорит, что он недействителен

Patrice T

Воспользуйся Улучшить вопрос чтобы обновить ваш вопрос.
Чтобы каждый мог обратить внимание на эту информацию.

Откуда ты знаешь, что они совпадают ?
Показать примеры входных данных, которые должны совпадать

1 Ответов

Рейтинг:
1

Patrice T

Цитата:
когда регулярное выражение.IsMatch(широта) == true
он все еще говорит, что он недействителен

Потому что ваш ввод и регулярное выражение не совпадают.
Ваш входной формат выглядит странно:
Instead of
27⁰33,04.24'' S 28⁰50,24.18'' E
it should look like
27⁰33'04.24'' S 28⁰50'24.18'' E
or
27⁰33'04.24" S 28⁰50'24.18" E
and also
27⁰ S 28⁰ E
27⁰33' S 28⁰50' E
27⁰33'04" S 28⁰50'24" E
should be valid

В вашем регулярном выражении я не вижу никакого места, чтобы соответствовать °, ', ", B или E
Ваше регулярное выражение действительно совпадает
27.45, 28.50


Вы должны начать с перечисления всех допустимых входных форматов, а затем построить регулярное выражение.

Всего лишь несколько интересных ссылок, которые помогут построить и отладить регулярное выражение.
Вот ссылка на документацию по регулярным выражениям:
perlre - perldoc.perl.org[^]
Вот ссылки на инструменты, помогающие создавать регулярные выражения и отлаживать их:
.Объем тестер регулярное выражение - регулярное выражение шторм[^]
Регулярное Средство Выражения Эспрессо [^]
RegExr: Learn, Build, & Test RegEx[^]
Онлайн-тестер регулярных выражений и отладчик: PHP, PCRE, Python, Golang и JavaScript[^]
Этот пример показывает вам регулярное выражение в виде красивого графика, который действительно полезен для понимания того, что делает регулярное выражение: Debuggex: онлайн-тестер визуальных регулярных выражений. JavaScript, Python и PCRE.[^]
Этот сайт также показывает регулярное выражение в красивом графике, но не может проверить, что соответствует регулярному выражению: Regexper[^]


Member 14370529

Спасибо

0x01AA

Это круто для 5-ти

Patrice T

Спасибо