Как проверить, соответствует ли мой строковый ввод правильному синтаксису в C ++? - PullRequest
0 голосов
/ 05 апреля 2020

Я новичок в этом сайте, и я впервые спрашиваю здесь.

Моя проблема в том, что я хочу проверить, соответствует ли моя строка правильному шаблону или синтаксису. Я делаю это с C ++ String (std :: string). Я уже сделал это, используя строку C -Style, однако я хочу сделать это на этот раз в C ++ String. Пример проблемы ниже:

Ввод: 2y '' + 3y '- 2y = 0 или y' '= 4y

Я хочу проверить если производный ввод имеет правильный синтаксис, такой как (a) y '' + (b) y '+ (c) y = 0, однородное уравнение второго порядка. Тем не менее, я все еще хочу ввести нестандартное уравнение формы, такое как второй пример ввода, который можно транспонировать и сделать его стандартным.

То, что я делал раньше с ним, это убирало все пробелы, l oop всю строку и проверьте каждый индекс. Например. если найдено «y», следующий символ должен быть '\'' или арифметический c символ, такой как '-' или '+' или '=', тогда, если он не совпадает, то он должен вернуть false.

Или, может быть, я просто неправильно это понимаю. Я новичок в программировании и просто прохожу курс информатики. Примечание: извините за мой плохой Engli sh и извините, если я не написал свой код здесь. Это слишком долго.

1 Ответ

0 голосов
/ 05 апреля 2020

Регулярные выражения могут быть ответом. Они обычно используются для проверки, является ли строка первым форматом, или для нахождения частей строки, которые это делают.

RegExr - отличный инструмент для изучения и проверки ваших регулярных выражений.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...